我開始開發我的node.js應用程序的工作,但我不能「認爲異步」。 在我的函數中,我必須做一個查詢,對於每一行我都必須做另一個查詢來計算最終結果並創建我的json。 我嘗試這樣做:Node.js:forEach內部async.series
async.series([
function(callback) {
db.myCannedResponseList(req.params.websiteid, function(err,questions) {
if (err) return callback(err);
...
callback();
});
},
function(callback) {
async.forEachSeries(temp,function(quest,callback) {
db.getCannedAnswer(quest.id, function(err,answers) {
console.log(answers);
});
}, function(err) {
if (err) return next(err);
});
callback();
}
],
function(err) {
if (err) return next(err);
res.json(output);
});
但有一個問題:後res.json(輸出)getCannedAnswer的結果顯示。 我該如何解決它?
也許只能通過'callback'來代替匿名函數(err)'。它會拋出''next next(err);'因爲'next'在那裏不存在(除非它在給定片段之外定義)。 –
@JonathanLonowski很對,我會更新我的答案:) – robertklep