没有明确定义的子任务执行

时间:2014-10-20 15:23:22

标签: javascript node.js gulp

是否有人有自动运行子任务的解决方案'在gulp?

我是gulp的新手,目前正在构建我的gulp文件:

gulp.task('build:ccss', function(cb) {
  ...
}

gulp.task('build:js', function(cb) {
  ...
}

gulp.task('build:img', function(cb) {
  ...
}

gulp.task('build:index', function(cb) {
  ...
}

然后我明确定义了基本任务并让它执行子任务:

gulp.task('build', ['build:scss', 'build:js', 'build:img', 'build:index']);

我将这种结构用于几个小组'任务:清洁,建筑,掉毛。

我很好奇是否有人在运行基本任务时有自动执行子任务的解决方案,而没有像我一样创建明确的定义。

1 个答案:

答案 0 :(得分:2)

您可以这样使用 async (或其他一些控制流程库):

var async = require('async');

gulp.task('build', function (callback) {
  async.series([
    function (cb) {

      // example usage should be your build:scss task,
      // notice the call of `cb` on end event

      gulp.src('package.json')
        .pipe(gulp.dest('test/'))
        .on('end', cb);
    },
    function (cb) {
      // same thing with the content of your build:js
    },

    // all your other tasks

  ], callback);
});