如何按顺序运行gulp任务?

6

我在gulp里有几个任务,其中一个不能和其他任务并行执行。让我们来看一个例子:

var gulp = require('gulp');
gulp.task('clean', function() {
    // clean up output folder
});
gulp.task('copy1', function() {
    // writes stream in the output folder
});
gulp.task('copy2', function() {
    // writes stream in the output folder
});

gulp.task('default', ['clean', 'copy1', 'copy2']);

在这个例子中,我需要并行运行copy1copy2,但只能在clean之后运行。如何实现这个技巧?

1
@Vohuman 很酷!谢谢! - Warlock
顺便提一下,我已经尝试过 gulp-sequence,它可以正常工作。 - Warlock
2个回答

5
var runSequence = require('run-sequence');
gulp.task('default', function(callback) {
    runSequence('clean', ['copy1', 'copy2'], callback);
});

5

注意 - 在使用runSequence时,gulp 3.x版本中存在一个bug,即当涉及文件I/O时,流会提前返回。如果你遇到问题,请参考这篇文章:


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接