Gulp看多个文件夹

Jie*_*eng 4 javascript browserify gulp babeljs

在一个项目中,在开发过程中,我想

  • 使用Babel监视并重新编译服务器端代码(因为我想在Parse上使用"ES6")
  • 使用Browserify/Watchify观察并重新编译客户端代码

我怎样才能做到这一点?我可以编写2个监视任务,但是我必须打开2个终端窗口才能看到这两个目录.是否可以在1 gulp任务中执行此操作?像2个任务一样吗?

Jac*_*ャック 23

是的,你可以做你想做的事.

gulp.task('watch', function() {
    gulp.watch(['directoryA/**/*.js', 'directoryB/js/**/*.js'], ['task']);
});
Run Code Online (Sandbox Code Playgroud)

如果要查看其他文件类型,还可以向阵列中添加更多内容.IE:'directoryA/**/*.html'

如果您希望它们在您提及时运行两个不同的任务,请将其更改为:

gulp.task('watch', function() {
    gulp.watch(['directoryA/**/*.js'], ['taskA']);
    gulp.watch(['directoryB/**/*.js'], ['taskB']);
});
Run Code Online (Sandbox Code Playgroud)

我使用BrowerifyBabelify的示例gulp任务.

gulp.task('taskA', function() {
    return browserify('path/to/file.js')
    .transform('babelify')
    .bundle()
    .pipe(source('file.js')) // this is the output file name
    .pipe(gulp.dest('destination/directory/')); // and this is where it ends up
});
Run Code Online (Sandbox Code Playgroud)

编辑

我刚刚意识到我没有说明你是否需要一两项任务.你可以在技术上做到,但最好的方法是有两个单独的任务.