首先,由于模块插件都在国外的,所以最好使用淘宝的镜像。
其次,这些模块都是放在项目里面,所以如果进行版本管理的话,要把node_modules文件夹加入.gitignore文件里面。
npm install -g cnpm --registry=https://registry.npm.taobao.org
然后使用cnpm
代替npm
。
var gulp = require('gulp'),
minifycss = require('gulp-minify-css'),
concat = require('gulp-concat'),
uglify = require('gulp-uglify'),
rename = require('gulp-rename'),
jshint = require('gulp-jshint'); //需求库引入
//压缩css
gulp.task('minifycss', function () {
return gulp.src('css/*.css') //需要操作的文件
.pipe(rename({suffix: '.min'})) //rename压缩后的文件名
.pipe(minifycss()) //执行压缩
.pipe(gulp.dest('dist/css')); //输出文件夹
});
//压缩、合并js
gulp.task('minifyjs', function() {
return gulp.src('js/*.js') //需要操作的文件
.pipe(concat('main.js')) //合并所有js到main.js,去掉则不会合并,但压缩
.pipe(gulp.dest('js')) //输出到文件夹
.pipe(rename({suffix: '.min'})) //rename压缩后的文件名
.pipe(uglify()) //压缩
.pipe(gulp.dest('Js')); //输出
});
来自雅虎的图片压缩,可压缩60%,而且品质几乎无损。缺点是只能压缩jpg和png文件。在命令行下运行会报错,但在webstorm下运行则没问题。
安装:cnpm install gulp-smushit --save-dev
var smushit = require('gulp-smushit');
gulp.task('smushit', function () {
return gulp.src('imgs/*')
.pipe(smushit({
verbose: true
}))
.pipe(gulp.dest('dist'));
});
待续