如何按顺序运行多个节点流(由 gulp 生成)?
让我们假设一个简单的 gulpfile 有两个依赖的任务:
var gulp = require("gulp");
gulp.task("do1", function() {
return gulp.src("./test/*")
.pipe(gulp.dest("./dest/"));
});
gulp.task("do2", function() {
return gulp.src("./dest/*")
.pipe(gulp.dest("./final/"));
});
gulp.task("default", gulp.series("do1", "do2"));
到目前为止我想出了什么:
var gulp = require("gulp");
function do1() {
return gulp.src("./test/*")
.pipe(gulp.dest("./dest/"));
}
function do2() {
return gulp.src("./dest/*")
.pipe(gulp.dest("./final/"));
}
gulp.task("do1", function() {
return do1();
});
gulp.task("do2", function() {
return do2();
});
gulp.task("default", gulp.series("do1", "do2"));
// ...
// somewhere else in the same file, with some preconditions ...
do1().on("finish", do2);
确实这适用于这个简单的例子,但是有没有更方便/优雅的方式?特别是对于较长的依赖链。也许是使用gulp.series
和执行整个系列的解决方案?