javascript - Mongoose - exec 函数有什么作用?

标签 javascript mongoose

我遇到了一段 Mongoose 代码,其中包含一个查询 findOne,然后是一个 exec() 函数。

我以前从未在 Javascript 中见过该方法?它具体是做什么的?

最佳答案

基本上,当使用 mongoose 时,可以使用 helpers 检索文档。每个接受查询条件的模型方法都可以通过 callbackexec 方法执行。

回调:

User.findOne({ name: 'daniel' }, function (err, user) {
  //
});

执行:

User
  .findOne({ name: 'daniel' })
  .exec(function (err, user) {
      //
  });

因此,当您不传递回调时,您可以构建一个查询并最终执行它。

您可以在 mongoose docs 中找到更多信息.

更新

使用Promises的注意事项结合 Mongoose 异步操作是 Mongoose 查询不是 promise 。查询会返回一个thenable,但如果您需要一个真正的 Promise,您应该使用exec 方法。可以找到更多信息here .

在更新期间我注意到我没有明确回答问题:

Ive never seen that method in Javascript before? What does it do exactly?

嗯,它不是原生 JavaScript 方法,而是 Mongoose API 的一部分。

关于javascript - Mongoose - exec 函数有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31549857/

相关文章:

javascript - @RequestParam 不接受请求发送的字符串中的 '&',存储 & 之前的所有字符并 chop 其余字符

javascript - Zurb Foundation Orbit slider 在第三张幻灯片上暂停

javascript - 有什么方法可以将图像与选择列表一起使用?

node.js - 在嵌套数组的每个项目中重新映射ObjectId数组

javascript - 从循环内更新数据

javascript - 多个谷歌图表上的事件

Javascript 错误消息,自定义对象表示

node.js - MongoDB Mongoose 连接数据库时出错

javascript - 没有数组就无法嵌套模式的原因是什么

mongodb - 根据 mongodb 中的积分查找用户排名