我一直在使用一饮而尽作为构建工具一个奇怪的行为。 我从另一个问题,这是指清理另一个运行之前建立的文件下面的代码:
function clean() {
var delResult = del(['build/**/*', 'dist/**/*']);
return delResult.then(del(['build', 'dist']));
}
gulp.task('clean', clean);
然后,我有我的默认的任务,其中包括在构建其余部分的清洁任务:
gulp.task('default', gulp.series('clean', gulp.parallel('doJsStuff, doCssStuff', 'doEvenMoreStuff'));
问题是,大口已经与构建持续两个德尔 - 操作完成之前。 据我了解then
会返回一个承诺,当承诺履行被一饮而尽应该继续。 当然, then
-promise不能得到之前,首先满足del
-promise一样。 所以我想它应该按预期工作,但没有。
该行为是在大口3和4是相同的。
我知道我可以用做同样的东西只有一个del
-call:
function clean() {
return del(['build/**', 'dist/**']);
}
实际工作,是我的问题的解决方案。 不过我想明白了,为什么链接承诺不工作。 谁能告诉我?