javascript - 多个 Gulp 任务等待另一个任务

标签 javascript gulp

我需要构建一系列 Gulp 任务,如下所示:

任务1 -> 任务2A、任务2B、任务2C -> 任务3,

其中任务 2A、2B、2C 并行运行(但任务 1 应该在之前完成,并且只完成一次)。

我尝试过的:

gulp.task('Task1', []);

gulp.task('Task2A', ['Task1']);

gulp.task('Task2B', ['Task1']);

gulp.task('Task2C', ['Task1']);

gulp.task('Task3', ['Task2A', 'Task2B', 'Task2C']);

看起来是有效的,但我不确定,它是否保证Task1只会执行1次,还是可以触发多次?

谢谢。

最佳答案

也许最简单的方法(不使用 gulp4.0)是 run-sequence plugin .

对于您的情况:

var runSequence = require('run-sequence');

gulp.task('build', function(callback) {
   runSequence( 'Task1',
               ['Task2A', 'Task2B', 'Task2C'],
                'Task3',
                callback);
});

确保所有任务中都有 return 语句。

Please Note

This was intended to be a temporary solution until the release of gulp 4.0 which should have support for defining task dependencies similarly.

Given that Gulp 4 appears to never be fully released, take that for what you will. Be aware that this solution is a hack, and may stop working with a future update to gulp.

关于javascript - 多个 Gulp 任务等待另一个任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46409698/

相关文章:

javascript - Azure Functions [JavaScript/Node.js] - HTTP 调用,良好实践

javascript - 当我向下滚动我的网站页面时,如何让进度条更新?

javascript - 使用 Selenium 模拟将文件拖到上传元素上

node.js - 如何使用 Gulp 将多个 (npm) package.json 文件合并为一个?

javascript - 为什么没有图像数据引用?

javascript - JQuery scrollTop() 函数不滚动

css - 如何在 gulp-sass 中编译 map 数组?

node.js - 无法让 connect-livereload 在 gulp 任务中与 express 服务器一起工作

javascript - 如何使用 Gulp 缓存破坏新的应用程序构建?

javascript - 在我的代码中添加这个包装器是什么?