![](/img/trans.png)
[英]How to merge the all the callback results in final callback using Async parallel
[英]using callback of node async parallel
我幾乎沒有可以並行執行的功能。 使用async.parallel()
可以正常工作,但是當收到錯誤時,它將執行主回調。
由於功能是獨立的,因此即使出現錯誤,我仍然希望其他結果。
這是我當前的代碼。 我是否需要另一個async
功能?
var async=require('async');
async.parallel({
one:function(callback)
{
callback(null,1);
},
two:function(callback)
{
callback("ERROR Occured");
},
three:function(callback)
{
callback(null,3);
},
four:function(callback)
{
callback(null,4);
}
},function(err,result)
{
console.log(err);
console.log(result);
});
您可以使用reflectAll
:
var async = require('async');
async.parallel(async.reflectAll([
function(callback) {
callback(null,1);
},
function(callback) {
callback("ERROR Occured");
},
function(callback) {
callback(null,3);
},
function(callback) {
callback(null,4);
}
]), function(err,result) {
console.log(err);
console.log(result);
});
這里是如何工作的:
將函數包裝在另一個總是返回數據的函數中,即使它出錯。 返回的對象具有屬性
error
或value
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.