我有一个使用async.js模块的大型node.js应用程序。
我的许多代码都像这样:
async.series([
function(callback){
sql.update(query, callback);
},
function(callback){
if (something){
sql.update(query2, callback);
}
else{
callback(null);
}
}
大问题在于else语句中的同步回调。我曾经读到过不要在async.js中这样做,因为它可能会导致意外的结果,但是我不确定最好的替代方案是什么。我读到有些地方应该使用process.nextTick,但现在我又读到我们不应该使用它,而应该使用setImmediate。
能否有人指点一下我?谢谢!
callback
的第一个参数应该为null,否则.series
调用将以错误退出。尝试使用console.trace()
、断点和更多输出进行调试。 - Gntem