我的目標是將記錄保存在異步foreach循環中的mongoDB集合中。以下是自行說明的代碼。在async foreach循環中使用collection.save()在節點js中未調用回調
async.forEach(data, function(item, callback) {
var object = new Collection_Object();
// errorLog.push(sdb);
object.save(function(error) {
count++;
console.log(count);
if(error) {
console.log("inside error");
count--;
}
//callback();
});
callback();
}, function() {
//This is the block which should be called after foreach.
res.json(data);
});
現在正在發生的事情是流動跳過save
部分,直接跳到應該forEach
後,被稱爲塊。
如果我評論save
部分,如預期的那樣,回調工作正常。 我不明白我在做什麼錯誤。可能是collection.save()
不是這樣的。 請指導。
可能DUP問題:http://stackoverflow.com/questions/10390041/node-js-using -the-async-lib-async-foreach-with-object – funcoding
爲什麼你在save()中調用callback()函數?這正是它應該被調用的地方。 –
我想,我一直忘記取消註釋下面的回調()函數。有效。愚蠢的我。 –