Gulp:新一代前端構建利器
1、什么是Gulp
gulp.js 是一種基于流的,代碼優于配置的新一代構建工具。
Gulp
和Grunt
類似。但相比于Grunt
的頻繁的IO
操作,Gulp
的流操作,能更快地完成構建。
2、Gulp特性
-
使用方便
通過代碼優于配置的策略,Gulp
可以讓簡單的任務簡單,復雜的任務更可管理。
-
構建快速
通過流式操作,減少頻繁的 IO
操作,更快地構建項目。
-
插件高質
Gulp
有嚴格的插件指導策略,確保插件能簡單高質的工作。
-
易于學習
少量的API,掌握Gulp
可以毫不費力。構建就像流管道一樣,輕松加愉快。
3、Gulp安裝
Gulp
是基于 Node.js
的,故要首先安裝 Node.js
npm install -g gulp npm install —-save-dev gulp
4、Gulp使用
Gulp
的任務都是以插件的形式存在,本次示例以 gulp-jshint 為例,展示Gulp
的常規用法。
安裝 gulp-jshint
npm install gulp-jshint --save-dev
創建 gulpfile.js
gulp項目頁 有一個 Sample gulpfile
。如果不會寫的話,直接參考一下就OK了。
var gulp = require('gulp'); var jshint = require('gulp-jshint'); var paths = { scripts: 'js/**/*.js', };gulp.task('lint', function() { return gulp.src(paths.scripts) .pipe(jshint()) .pipe(jshint.reporter('default')); });
然后執行命令行
gulp lint
即可。
5、Gulp總結
Gulp
相比于 Grunt
有很多優點,比較直觀的:就是學習曲線比較平滑。比Grunt速度更快、配置更少。
當然,Gulp
還有很多高級的特性,詳見官方文檔
Gulp插件列表
常用插件
var jshint = require('gulp-jshint');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var imagemin = require('gulp-imagemin');
var img64 = require('gulp-img64');
var base64 = require('gulp-base64');
var combineCSS = require('combine-css');