Использование динамического списка задач gulp в последовательности выполнения
Я создаю несколько простых задач с динамическими именами задач. Эти задачи должны выполняться по порядку, а не параллельно. Я помещаю имена задач в массив, но получаю ошибку из последовательности выполнения. Я предполагаю, что эта ошибка - проблема с тем, как я перечисляю задачи из массива в моем коде последовательности выполнения.
Это то, что я делаю:
var taskNames = ['task1', 'task2', 'task3']
Затем для последовательности выполнения я пытаюсь сделать это:
gulp.task('run-dynamic-tasks', function(){
runSequence(
taskNames.join(", \n"),
function(){
browserSync.reload();
}
);
});
Это не работает и выдает эту ошибку:
Ошибка: Задача task1,
task2,
task3 не настроен как задание на gulp. Если это субмодуль (ошибка продолжается)
Обратите внимание, если в массиве есть только одна задача, например:
var taskNames = ['task1']
тогда этот код работает.
Я считаю, что это, вероятно, ошибка JavaScript, в отличие от последовательности выполнения или узла.
спасибо за любую помощь, Скотт
1 ответ
Оказывается, это действительно основная проблема JavaScript. Я должен был использовать function.apply
Окончательный gulp.task это:
gulp.task('run-dynamic-tasks', function(){
runSequence.apply(null, taskNamesArray);
});