带有投影的猫鼬查找随机跳过回调

时间:2018-10-31 04:55:11

标签: arrays node.js mongodb mongoose mongoose-schema

我正在尝试提取聊天对象列表的最后一条消息(包含多个消息)。

我已经开始工作了,但是我在运行查询时随机注意到,它为合并了最后一条消息的数组返回空结果。

const lastMessages = [];
    const messages = await Chat.find(
      {
        $and: [
          {
            $or: [
              { participants: req.user.profileID },
              { invited: req.user.profileID }
            ],
            active: true
          }
        ]
      },
      { messages: 1, _id: 0 },
      (err, res) => {
        if (err) {
          console.log("Error: ", err.message);
        }
        _.forEach(res, function(value) {
          lastMessages.push(_.last(value.messages));
        });
      }
    );
return lastMessages;

有什么想法可能会发生这种情况吗?我已经尝试过异步等待并使用.then,但它们都不起作用。

0 个答案:

没有答案