所有的Mongoose模型方法都是基于Promise的吗?

布罗德

我刚开始使用Mongoose,我必须说我有点困惑:在查看Model API文档时,似乎有些方法是基于回调的(例如deleteOne),有些方法返回了promise。

令我惊讶的是,即使是那些不说要返回承诺的方法实际上也确实返回了一个。例如,此代码有效,并且“查询”获取预期的对象:

 const query =  await  this.model.deleteOne({ _id:id  })

即使在文档中示例也是这样写的:

Character.deleteOne({ name: 'Eddard Stark' }, function (err) {});

我想念猫鼬吗?

gforce301

基本上,对模型的大多数操作都是查询。来自文档

猫鼬查询不是承诺。为了方便起见,它们具有用于co和async / await的.then()函数。但是,与promise不同,调用查询的.then()可以多次执行查询。

因此,您既可以通过回调函数也可以作为promise使用这些方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

所有的 URL 都是 URN 吗?

所有的 ARM 都是一样的吗?

所有的C ++标头都是类吗?

所有 REST 方法都是幂等的吗?

所有的JavaScript回调都是异步的吗?如果没有,我怎么知道是哪个?

我应该使我所有的Java代码都是线程安全的吗?

所有的最后一课都是一成不变的吗?

没有实现所有的接口方法。可能吗?

假定所有的T的sizeof(std :: unordered_map <std :: string,T>)都是相同的,实际上是安全的吗?

如何证明所有的证明都是平等的?

为什么所有的速度值都是0?

当您拥有的所有东西都是可调用的时,是否有一种方法可以访问方法的类

知道为什么我所有的数据都在数据框的第一列中,而其余的都是NaN吗?

当我在IRB中声明顶级方法时,为什么我的顶级方法在所有类上都是公共的(而不是私有的)?

Clojure中的所有变量都是常量吗?

JPQL中的所有联接都是等联接吗?

所有异常都是从 JdbiException 类型的 Jdbi 抛出的吗?

TCL中的所有内容都是真的吗?

C语言中的所有功能都是全局的吗?

所有右值引用都是左值吗?

LLVM IR中的所有内容都是指针吗?

Javascript-所有数组都是原义的吗?

如何检查是否所有的JSON值都是字符串类型

所有的Spring Framework Java Configuration注入示例是否都是错误的?

Promise.all消耗了我所有的RAM

如何获得所有的类方法

可以用现有的缸加载模型吗?

在R中-对于所有TRUE,所有随后的cols都是TRUE吗?

除了在每个模型文件中包含require('mongoose')之外,还有其他更好的方法吗?