0
我有一個帖子和一組用戶的集合。在返回帖子列表時,我想解析對用戶的引用。這意味着要爲每行用戶進行異步調用。當修士返回承諾時,它會返回響應「完成」或「成功」的內容。 Q期望迴應「那麼」。我需要使用Q.all來等待所有的用戶進入帖子,但是我不能讓它和僧侶的承諾風格發揮得很好。讓和尚與Q.all玩好
這是我的嘗試。
exports.posts = function (req, res) {
req.posts.find()
.complete(function(err, posts) {
handle(err, res, posts);
var postsWithUsers = posts.map(function(post) {
return req.users.findOne({_id: post.userId}).complete(function(err, result) {
post.user = result;
});
});
Q.all(postsWithUsers.map(function(monkPromise) {
monkPromise.then = monkPromise.complete
}), function(err, results) {
console.log("done with all posts");
});
});
};