小编Bel*_*ain的帖子

猫鼬查找与执行。如何返回值?

我是 Node 的新编程人员,我被卡住了,因为我不明白 .find 和 .exec 之间的区别。这是我尝试运行的代码:

exports.getPopulatedUsers = async function(query){
    var res = await users.find(query, function (err, docs) {
       if(err) return err;
       return docs;
   });
    return res; //  **Work fine, res return docs**
}
Run Code Online (Sandbox Code Playgroud)

但是当用 .exec 执行时, res 是未定义的。

exports.getPopulatedUsers = async function(query){
    var res = await users.find(query).exec(function (err, docs) {
       if(err) return err;
       return docs;
   });
    return res; //  **ERROR, res is undefined **
}
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

mongoose mongodb node.js express

4
推荐指数
1
解决办法
5528
查看次数

标签 统计

express ×1

mongodb ×1

mongoose ×1

node.js ×1