[英]async.series inside an asynchronous grunt task
我有一個繁重的任務,它們異步運行(使用this.async),因為我在代碼中具有異步功能。 我也希望幾個任務可以連續運行,所以我正在使用async npm模塊中的async.series。 問題是,當我到達async.series的最后一個回調,即function(err,result)時,我調用done()通知異步grunt任務已成功完成,有時失敗,有時通過。 我似乎無法理解。 這是代碼:
grunt.registerTask('aggCompJSON', function(){
var done = this.async();
var resultFile = {}; // final JSON object
var groupJSON = {}; // groups JSON object
async.series([
function(callback){
// get Application Configuration
__getAppConfig(grunt, callback);
},
function(callback){
// generate Component_map
__genCompMap(grunt, callback);
}
], function (err, result){
done();
}
);
我收到以下錯誤:
致命錯誤:ENOENT,打開“ logs / app.log”
有時也成功。 任何輸入表示贊賞。 謝謝
PS這些功能均未返回錯誤。 最后一個回調中的err對象始終為null 。
感謝您的幫助@RodrigoMedeiros。 是的,你是對的,我是想要求的功能之一的模塊,它意外行為。 解決方法是僅檢查哪些語句可能由於異步執行grunt任務而導致錯誤。 就我而言,我刪除了這些陳述,它們是不必要的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.