在 运行 序列中使用 gulp 任务的动态列表

using a dynamic list of gulp tasks in run-sequence

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

这就是我正在做的事情:

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

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

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

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

Error: Task task1,

task2,

task3 is not configured as a task on gulp. If this is a submodule (error continues)

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

var taskNames = ['task1']

那么此代码有效。

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

感谢您的所有帮助, 斯科特

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

最终gulp.task是这样的:

gulp.task('run-dynamic-tasks', function(){
  runSequence.apply(null, taskNamesArray);
});