Mongoose find()。exec()承诺问题

时间:2018-05-03 09:25:07

标签: javascript mongodb mongoose es6-promise

有人可以向我解释为什么下面的代码会返回audiences而不是返回一个空数组吗?

return Audience.find()
  .exec((err, audiences) => {
    if (err) return errorHandler.handle('audienceService', err);

    return Promise.resolve([]);
  });

1 个答案:

答案 0 :(得分:3)

您将从exec 回调返回。要使用exec中的承诺,请在as shown here上使用thenPromise.resolve

也没有理由
return Audience.find()
  .exec()
  .then(audiences => [])
  .catch(err => errorHandler.handle('audienceService', err));