吞咽处理任务的顺序是什么?
我对使用Gulp完成任务的顺序有些困惑。请允许我解释一下。吞咽处理任务的顺序是什么?
在gulpfile.js中,我有我所需的所有依赖关系,后面跟着一组任务。
每个子任务的基本模板是
gulp.task('compress:customName', function() {
return gulp.src(['app/folder/file.js', 'app/folder/file.js'])
.pipe(gp_concat('app.customName.min.js'))
.pipe(gp_uglify())
.pipe(gulp.dest(distDir));
});
然后,我有一个规则,他们都
gulp.task('compress:all', [
'compress:customName1',
'compress:customName2',
'etc...'
], function() {});
后来有多个主任务运行一个任务(只使用压缩:所有这例如)
gulp.task('master', ['compress:all'], function() {
return gulp.src('dist/*.js')
.pipe(notify("COMPRESSION COMPLETE"));
});
好的......这是基本的设置......现在来讨论这些任务出现的顺序。 o根据命令行结果完成。
[11:06:44] Using gulpfile C:\PATH\TO\PROJECT\gulpfile.js
[11:06:44] Starting 'compress:customName1'...
[11:06:44] Starting 'compress:customName2'...
[11:06:44] Starting 'compress:customName3'...
[11:06:44] Starting 'compress:customName4'...
[11:06:44] Starting 'compress:customName5'...
[11:06:44] Starting 'compress:customName6'...
[11:06:44] Starting 'compress:customName7'...
[11:06:44] Finished 'compress:customName1' after 108 ms
[11:06:44] Finished 'compress:customName6' after 93 ms
[11:06:44] Finished 'compress:customName5' after 132 ms
[11:06:44] Finished 'compress:customName4' after 139 ms
[11:06:44] Finished 'compress:customName3' after 233 ms
[11:06:44] Finished 'compress:customName2' after 245 ms
[11:06:44] Finished 'compress:customName7' after 381 ms
[11:06:44] Starting 'compress:all'...
[11:06:44] Finished 'compress:all' after 6.64 µs
[11:06:44] Starting 'master'...
[11:06:44] gulp-notify: [SO EXAMPLE : Gulp Builder] COMPRESSION COMPLETE
[11:06:44] Finished 'master' after 40 ms
'master'如何成为'compress:all'之后的最后一个启动和启动任务?
为什么完成的任务以这种随机顺序显示?
为什么说'master'只有40毫秒才能完成,它应该等待它调用的所有子任务,然后再考虑自己的完成?
'master'如何成为'compress:all'后面的最后一个启动和启动任务?
相关性在实际任务开始之前运行。 'compress:all'是'master'的依赖关系。
为什么Finished任务以这样的随机顺序显示?
依赖关系并行运行,即完成一个依赖关系只取决于完成一个所需的时间。
为什么说'master'只有40毫秒才完成,它应该等待它调用的所有子任务,然后再考虑自己完成?
任务的完成时间中不包括依存关系。
“DEPS - 任务的数组被执行并完成之前,你的任务将会运行。”
依赖项是按照它们添加到任务的顺序运行的吗? – beauXjames 2014-11-04 18:03:20
不,他们都在同一时间开始〜并行运行。 – Heikki 2014-11-04 18:04:56
好的...我明白了。我在同一页面上阅读,可以返回承诺而不是流。你有什么建议使用它来获得对一系列操作的更多控制吗? – beauXjames 2014-11-04 19:41:43
我没有看到你的榜样'compress'任务。你的意思是'主人'? – Heikki 2014-11-04 17:45:44
是...更新... thx – beauXjames 2014-11-04 17:47:30