先贴相关代码:
gulp.task('default',['zip','watch','browser-sync'],function(){
console.log('Hello!');
});
gulp.task('es6to5',function(){
return gulp.src('./res/es6/**/*.js')
.pipe(plumber())
.pipe(babel({presets:[es2015Preset]}))
.pipe(gulp.dest('./res/es5'));
});
gulp.task('pack',function(){
return gulp.src(`./res/es5/${config.projectName}.js`)
.pipe(plumber())
.pipe(browserify())
.pipe(gulp.dest('./res/js/'))
});
gulp.task('zip',['es6to5','pack'],function(){
return gulp.src(`./res/js/${config.projectName}.js`)
.pipe(plumber())
.pipe(uglify())
.pipe(gulp.dest('./res/minjs/'))
})
这段代码的作用是:
1.把es6文件夹里的es6文件转为es5文件,放到es5文件夹里;
2.把es5文件夹里的es5文件打包成一个js文件,放到js文件夹里;
3.把js文件夹里的js文件压缩之后,放到minjs文件夹里。
出现的问题是,运行的时候,只能完成es6toes5这一步。只有运行两次gulp才能完成上面的3步。
请问问题在哪?应该怎样改?
先放个链接: https://segmentfault.com/q/1010000003038517
我看代码,应该是pack任务需要依赖es6to5这个任务的。