我對使用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毫秒才能完成,它應該等待它調用的所有子任務,然後再考慮自己的完成?
我沒有看到你的榜樣'compress'任務。你的意思是'主人'? – Heikki 2014-11-04 17:45:44
是...更新... thx – beauXjames 2014-11-04 17:47:30