【发布时间】:2015-12-30 19:30:52
【问题描述】:
Gulp 新手。我的default 任务正在使用插件run-sequence,它告诉任务deleteBuild 运行,然后运行makeBuild。
随机地,我收到一个ENOENT 错误,这似乎告诉我我正在引用不存在的文件以进行删除或复制。我的任务是:
删除构建:
gulp.task('deleteBuild', function(done) {
var del = require('del');
del(['build/**/*'], done);
});
makeBuild:
gulp.task('makeBuild', function() {
var stream = gulp.src(['src/**/*'], { base: 'src/' })
.pipe(gulp.dest('build/');
});
谁能告诉我如何最好地解决这个问题?我希望寻求一种低层次的理解,而不是被展示一个没有解释的解决方案。谢谢。
旁白:我也尝试了不带回调函数的deleteBuild,假设它会执行删除并且只会继续完成后的下一个任务,尽管这似乎不是正在发生的事情。
【问题讨论】:
-
所以他们说 del() 不支持回调?如果我错了,请纠正我,但如果它返回 Promises(我不太确定),那么我需要在 del() 插件调用中添加一个“返回”,以便 Gulp 只继续下一个任务一次承诺兑现了吗?
-
以前支持回调,现在不支持了。这就是为什么网络上有这么多 sn-ps 显示它与回调一起使用的原因......是的,你可以直接返回它,任务将正确结束:)。
标签: gulp