【发布时间】:2016-06-22 16:41:49
【问题描述】:
我刚接触 node 并结束新的 async.js。我不确定我正在尝试做的事情是否可行(猜猜是),或者我的做法是否正确(猜猜不是)。事情是这样的:
这段代码是用来管理一些instagram数据的,所以我会根据代码实际需要做什么来解释一切,以便更容易理解。
连接到 mongoDB,获取一些 Instagram 帐户 ID(完成)
对于每个 id,我想获取 las 10 个帖子(我已经将其保存在我的数据库中)。
-
对于每个帐户的 10 项,我需要获取 (cmets + likes) 的总和,并将该值添加到第一个 eachSeries 调用的输出代码中。
router.get('/users_all', function(req, res) { User.find().sort({'counts.followed_by': 'descending'}).exec(function(err, users) { async.eachSeries(users, function(item, outerCallback) { Media.find({'userId': item.user_id}).exec(function(err, medias) { var count = 0; async.eachSeries(medias, function(item, outerCallback2) { count += item.comments_count + item.likes_count; }); }); item.totalAmount = count; }); res.json(users); }); }
我只是没有设置每个系列的回调调用,因为我不知道将它们放在哪里,而且我认为我的代码这样更容易理解。
如果需要有关代码的更多说明,请询问。 感谢您的帮助。
【问题讨论】:
标签: node.js mongodb callback nested async.js