在 运行 序列中使用 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);
});
我正在创建一些具有动态任务名称的 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);
});