标签:
首先,最基本也最重要的是,我们需要搭建node环境。访问 nodejs.org,下载完成后直接运行程序,就一切准备就绪。npm会随着安装包一起安装,稍后会用到它。 为了确保Node已经正确安装,我们执行几个简单的命令。
node -v
npm -v
npm 是 node 的包管理工具,可以利用它安装 gulp 所需的包。(在安装 node 时已经自动安装了 npm) 在命令行输入
npm install -g gulp
若一直没安装成功,请使用 cnpm 安装(npm的国内加速镜像),
安装 cnpm,在命令行输入:
npm install -g cnpm --registry=https://registry.npm.taobao.org
使用 cnpm 安装模块
cnpm install [name]
安装完成后,你可以使用下面的命令查看gulp的版本号以确保gulp已经被正确安装。
gulp -v
接着我们要进去到项目的根目录再安装一遍
npm install gulp --save-dev
我们将要使用Gulp插件来完成我们以下任务:
安装这些插件需要运行如下命令:
npm install gulp-sass gulp-autoprefixer gulp-clean-css gulp-jshint gulp-concat gulp-uglifyjs gulp-imagemin gulp-notify gulp-rename gulp-livereload gulp-cache gulp-rename --save-dev
更多插件可以看这里gulpjs.com/plugins/
接着我们要创建一个gulpfile.js在根目录下,gulp只有四个API: task,watch,src,和 dest
完整代码:
var gulp = require(‘gulp‘); // 引入组件 var jshint = require(‘gulp-jshint‘); var sass = require(‘gulp-sass‘); var concat = require(‘gulp-concat‘); var rename = require(‘gulp-rename‘); var cleanCSS = require(‘gulp-clean-css‘); var imagemin = require(‘gulp-imagemin‘); var uglify = require(‘gulp-uglifyjs‘); // 检查脚本 gulp.task(‘lint‘, function() { return gulp.src(‘./src/js/*.js‘) .pipe(jshint()) .pipe(jshint.reporter(‘default‘)); }); //压缩css gulp.task(‘minify-css‘, function() { return gulp.src(‘./src/styles/*.css‘) .pipe(cleanCSS()) .pipe(gulp.dest(‘./dist/styles‘)); }); // 编译Sass gulp.task(‘sass‘, function() { return gulp.src(‘./src/scss/*.scss‘) .pipe(sass()) .pipe(gulp.dest(‘./dist/css‘)); }); // 合并,重命名,压缩JS gulp.task(‘scripts‘, function() { return gulp.src([‘./src/js/file1.js‘, ‘./src/js/file2.js‘]) .pipe(concat(‘all.js‘)) .pipe(uglify()) .pipe(rename(‘all.min.js‘)) .pipe(gulp.dest(‘./dist/js‘)); }); // 压缩图片 gulp.task(‘images‘, function() { return gulp.src(‘./src/images/*‘) .pipe(imagemin()) .pipe(gulp.dest(‘./dist/images‘)) }); // 默认任务 gulp.task(‘default‘, function() { gulp.run(‘lint‘, ‘minify-css‘, ‘sass‘, ‘scripts‘, ‘images‘); // 监听文件变化 gulp.watch(‘./src/js/*.js‘, function() { gulp.run(‘lint‘, ‘sass‘, ‘minify-css‘, ‘scripts‘, ‘images‘); }); });
可以运行单独的任务,例如
gulp default gulp watch
也可以运行整个任务
gulp
文件源码:https://github.com/kiss19861127/gulp
标签:
原文地址:http://www.cnblogs.com/jone-chen/p/5764293.html