【发布时间】:2014-01-02 18:46:21
【问题描述】:
由于某种原因,此回调从未被触发。有 2 条消息,正确的输出是:
10
12
12
20
20
26
26
然后应该在回调运行时输出30,但它永远不会。
代码:
app.get("/getMessages", function (req, res) {
var JSONtoSend = [];
getAllMessages(req.session.cur_user, function ( messages ) {
console.log("10");
async.each(messages, function (message) {
console.log("12");
User.findById(message.senderId, function (sender) {
console.log("20");
User.findById(message.recieverId, function (reciever) {
console.log("26");
JSONtoSend.push({ content:message.content, reciever: reciever, sender: sender });
});
});
}, function (err) { // this is the callback
if (err) {
console.log(err);
} else {
console.log("30");
res.json(JSONtoSend);
}
});
});
});
【问题讨论】: