我正在使用caolan/async特别是 .parallel() ,我正在组装一个字符串对象。当出现错误时,整个事情都会存在并且不会完成,即使是没有错误的过程。
async.parallel({
"color": color,
"brand": brand,
"sku": sku,
}, function(err, result) {
console.log(err);
console.log(result);
});
如果brand
返回错误,我不会得到任何信息。我宁愿使用brand:false
。我怎样才能实现这个目标?
最佳答案
async.parallelPlus = function(functions, callback) {
var wrap = function(func) {
return function(callback) {
func(function(err, value) {
if (err) return callback(null, false);
return callback(null, value);
});
}
}
var newFunctions = {};
for (var func in functions) {
newFunctions[func] = wrap(functions[func]);
}
return async.parallel(newFunctions, callback);
}
关于asynchronous - 我希望异步并行不会因错误而中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26871860/