如何 运行 串联 gup 任务
How to run gup task in series
我是 gulp 的新手。
我写了两个需要执行的任务。当我 运行 它们分开时,它们工作正常。但是当我组合它们时,"replace" 不起作用。
gulp.task('bundle-source', function () {
return bundler.bundle(config);
});
gulp.task('bundle-config', function(){
return gulp.src(['config.js'])
.pipe(replace('src/*', 'dist/*'))
.pipe(gulp.dest(''));
});
gulp.task('bundle', ['bundle-config', 'bundle-source']);
我认为问题在于他们都在操纵 config.js。我认为第二个任务在保存到磁盘时会覆盖第一个任务所做的更改。第二个任务大概30秒。
Gulp 任务默认是 运行 并行。因此,如果您的任务正在处理相同的文件,它们可能确实会踩到彼此的脚趾。
您可以使用 gulp 的任务依赖项让它们 运行 一个接一个。所以如果 bundle-config
应该是 运行 在 bundle-source
之前:
gulp.task('bundle-source', ['bundle-config'], function () {
return bundler.bundle(config);
});
如果你需要它们一个接一个地运行,你也可以使用像run-sequence这样的包:
var seq = require('run-sequence');
gulp.task('bundle', function(cb) {
return seq('bundle-config', 'bundle-source', cb);
});
最后,您可以使用 gulp 4,它具有 运行 系列任务的内置机制。
我是 gulp 的新手。
我写了两个需要执行的任务。当我 运行 它们分开时,它们工作正常。但是当我组合它们时,"replace" 不起作用。
gulp.task('bundle-source', function () {
return bundler.bundle(config);
});
gulp.task('bundle-config', function(){
return gulp.src(['config.js'])
.pipe(replace('src/*', 'dist/*'))
.pipe(gulp.dest(''));
});
gulp.task('bundle', ['bundle-config', 'bundle-source']);
我认为问题在于他们都在操纵 config.js。我认为第二个任务在保存到磁盘时会覆盖第一个任务所做的更改。第二个任务大概30秒。
Gulp 任务默认是 运行 并行。因此,如果您的任务正在处理相同的文件,它们可能确实会踩到彼此的脚趾。
您可以使用 gulp 的任务依赖项让它们 运行 一个接一个。所以如果 bundle-config
应该是 运行 在 bundle-source
之前:
gulp.task('bundle-source', ['bundle-config'], function () {
return bundler.bundle(config);
});
如果你需要它们一个接一个地运行,你也可以使用像run-sequence这样的包:
var seq = require('run-sequence');
gulp.task('bundle', function(cb) {
return seq('bundle-config', 'bundle-source', cb);
});
最后,您可以使用 gulp 4,它具有 运行 系列任务的内置机制。