创建gulpfile.js
文件
直接在项目中手动创建即可
一般操作
1 | var gulp = require('gulp') |
个人见解
1 | gulp.task('default', gulp.series('less', gulp.parallel('toCss', 'toJs')), function(){}) |
gulp与grunt
grunt 只能同步
gulp 可以异步
gulp task任务函数里加 return的区别:
- 加return 执行任务是异步的 (先启动的任务不一定先完成)
- 不加return 执行任务是同步的 (先启动的任务完成之后才能进行下一个任务)
插件说明
gulp本身api能干的事情有限
gulp.src
gulp.task
gulp.dest
gulp.watch等
其主要还是得通过其插件去完成更多功能
插件 | 用途 |
---|---|
gulp-concat | 合并文件(能分别合并js和css) |
gulp-uglify | 混淆加密js文件 会忽略一些没用的变量或函数 |
gulp-minify | 混淆压缩js文件 |
gulp-clean-css | 压缩css文件 |
gulp-csso | 智能压缩css文件 |
gulp-clean | 删除文件夹 |
gulp-htmlmin | 压缩html文件 |
gulp-rename | 文件重命名 |
gulp-less | 编译less |
gulp-base64 | css中引用的图片转base64 |
gulp-html-replace | 向html中添加/替换link和script(现在html中写占位) |
gulp-livereload | 实时自动编译刷新(其实不加也可以监听刷新等,但是建议还是加上) |
gulp-connect | 热加载(webpack的dev, 本地的biu) |
open | 自动打开浏览器 该插件和gulp没有直接关系,是全平台通用的 |
… 更多插件 去gulp英文官网查找
gulp-load-plugins
gulp-load-plugins 该插件里面什么都有, 有了他,之前很多插件都可以不引入
1 | var $ = require('gulp-load-plugins')() // 函数执行 返回对象 |
$.方法名是有讲究的
gulp-less 则
less
gulp-clean-css 则
cleanCss
写成clean-css 是错的!!!!gulp-htmlmin 则
htmlmin
,写成htmlMin 是错的!!! !