Вы не должны использовать run
. Вот альтернатива (для решения этой части вашего ответа), но не то, что вам нужно сделать:
gulp
.start('default')
.once('task_stop', function(){
//do other stuff.
});
Если вам действительно нужно запустить специальную задачу, но вы можете буквально использовать run... Вы можете использовать .start
с именем задачи, а также подключиться к обработчику task_stop
, чтобы запустить что-то, когда задача будет завершена. Это удобно при написании тестов для gulp-задач, но это действительно так.
однако при повседневном использовании gulp это антипаттерн.
Обычно вы создаете небольшие задачи и комбинируете их. Это правильный путь. Видеть это:
var gulp = require('gulp'),
runSequence = require('run-sequence');
function a(){
//gulpstuff
}
function b(){
//gulpstuff
}
function d(callback){
runSequence('a', 'b', callback)
}
gulp
.task('a', a) // gulp a -runs a
.task('b', b) // gulp b runs b
.task('c', ['a', 'b']) //gulp c runs a and b at the same time
.task('d', d); //gulp d runs a, then b.
в основном, если бы c или d были задачей наблюдения, вы достигли бы той же цели, запуская уже зарегистрированные задачи меньшего глотка без .run
person
the_5imian
schedule
20.05.2015