gulp3.0到gulp4.0的坑
AssertionError [ERR_ASSERTION]: Task never defined: getLanguageObj
任务一定需要先创建后使用,先后顺序需要调换。
使用gulp-each为什么只编译一个文件
// 对每一个JS文件进行处理
//
stream = stream.pipe(each(function(content, file, callback) {
// 获得JS文件全路径
var path = file.history[0];
// 处理单个文件
dealPath(path );
callback(null,null);
}));
原有的编译不需要执行callback也可以执行,gulp-each升级后一定需要加上callback方法
gulp src设置base,修改存放路径
//
gulp.src('websrc/**/*.js',{base:'websrc'}).pipe(gulp.dest('zh'));
这样会将源目录下的websrc这层目录去掉,比如源目录"websrc/pages/common/index.js"会存放到目标目录下"zh/pages/common/index.js"
gulp watch方法的变动
// gulp3.0
gulp.watch(['websrc/**/*.html'], function(event) {
event.type = 'added'//或者changed、deleted
//event.path 是文件的绝对路径
}
// gulp4.0
gulp.watch(['websrc/**/*.html'].on('all', function(event, path, stats) {
event= 'add'//或者change、unlink
//path 是文件的相对路径
})