假设我有一个gulp
任务,例如:
gulp.src('bla-bla')
.pipe(smth())
.pipe(epic()) // I want to run gulp task here and wait for its end
.pipe(livereload());
我希望在smth()
完成后运行gulp任务,并且我想确保在插入的gulp任务完成后livereload()
完全启动。我怎么能这样做?
答案 0 :(得分:2)
目前,您最好的选择可能是run-sequence
:https://github.com/OverZealous/run-sequence
据说Gulp直接在4.0中集成了这个功能,但是现在你可以使用runSequence来实现同样的功能。
在您的问题中:
gulp.task('one', function() {
return gulp.src('bla-bla')
.pipe(smth())
.pipe(epic())
})
gulp.task('two', function() {
return livereload.reload()
})
gulp.task('runboth', function() {
runSequence('one', 'two')
});
您可能需要根据.reload()
返回的内容进行回调。见https://github.com/OverZealous/run-sequence#usage