0

我正在创建一些具有动态任务名称的 gulp 任务。这些任务需要按顺序运行,而不是并行运行。我将任务名称放在一个数组中,但我从运行序列中得到一个错误。我认为这个错误是我如何在运行序列代码中列出数组中的任务的问题。

这就是我正在做的事情:

var taskNames = ['task1', 'task2', 'task3']

然后对于运行序列,我正在尝试这样做:

gulp.task('run-dynamic-tasks', function(){
  runSequence(
    taskNames.join(", \n"),
    function(){
      browserSync.reload();
    }
  );
});

这不起作用并给出此错误:

错误:任务task1,

任务2,

task3 未配置为 gulp 上的任务。如果这是一个子模块(错误继续)

请注意,如果数组中只有一个任务,例如:

var taskNames = ['task1']

然后这段代码有效。

我相信这可能是一个 javascript 错误,而不是运行序列或节点。

谢谢你的任何帮助,斯科特

4

1 回答 1

4

事实证明这确实是一个基本的 javascript 问题。我应该一直在使用function.apply

最后的 gulp.task 是这样的:

gulp.task('run-dynamic-tasks', function(){
  runSequence.apply(null, taskNamesArray);
});
于 2015-08-12T16:15:28.747 回答