2016-12-16 86 views
0

我繼承了一個由gulp構建調用的具有複雜構建的插件。我設法通過附加一些我的東西來擴展處理,但我無法保留原始任務名稱。重命名gulp任務

gulp.task('customBuild', function(cb) { 
    runSequence(
     'build', ///<-- inherited stuff 
     'build:svg:delete', 
     'build:svg', 
     'build:war', 
     cb 
); 
}); 

我想達到什麼是該序列將

gulp build 

觸發是否有可能重命名一口任務,如何做到這一點,而不屆黨插件的修改。

回答

1

Gulp任務只是以特定名稱和某些依賴項註冊的函數。 「重命名」任務只是以新名稱註冊函數和依賴關係的行爲。

以下根據新的originalBuild名稱重新登記第三方build任務,然後用您自己的名稱覆蓋build任務。

gulp.task('originalBuild', gulp.tasks['build'].dep, gulp.tasks['build'].fn); 

gulp.task('build', function(cb) { 
    runSequence(
     'originalBuild', ///<-- inherited stuff 
     'build:svg:delete', 
     'build:svg', 
     'build:war', 
     cb 
); 
}); 
+0

Thx Sven這個完美的作品! –