gpt4 book ai didi

npm - 如何让 gulp.series 等到文件在以前的任务上创建

转载 作者:行者123 更新时间:2023-12-03 23:47:35 28 4
gpt4 key购买 nike

我目前正在使用这样的东西:

gulp.task('js', gulp.series('js-a', 'js-b', 'js-c'));

任务 js-c 需要首先执行 js-ajs-b 并生成 2 个文件,然后我在 js-c 中组合。

但是,无论我是否使用 gup-series ,函数 js-c 都会在创建前两个任务的两个文件之前执行。

我怎么能告诉 gulp 系列等待那些?

我已经阅读了其他相关问题,但他们倾向于依赖外部脚本来完成此任务。
我通过在 setTimeout 上添加 js-b 手动设法解决了这个问题,但似乎是一个hacky解决方案。

有没有什么正确的方法可以用 gulp.series 来完成这个?

为了让您了解上下文,任务 js-a 如下所示:
var gp_concat = require('gulp-concat');

gulp.task('js-a', function(done) {
gulp.src([
'file1.js',
'file2.js'
])
.pipe(gp_concat('tmp.js'))
.pipe(gulp.dest('./'));

done();
});

我现在被迫使用超时来解决这个问题:
setTimeout(function(){
done();
}, 500);

最佳答案

在这种情况下不应使用 done() 并且任务应返回流(请参阅 here )。请试试这个:

var gp_concat = require('gulp-concat');

gulp.task('js-a', function() {
return gulp.src([
'file1.js',
'file2.js'
])
.pipe(gp_concat('tmp.js'))
.pipe(gulp.dest('./'));
});

关于npm - 如何让 gulp.series 等到文件在以前的任务上创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61640071/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com