mongoose - 将 bluebird 与 mongoose 一起使用的正确方法是什么?

标签 mongoose bluebird

来自 Bluebird 文档:

// Mongoose
var Promise = require("bluebird");
Promise.promisifyAll(require("mongoose"));

来自 Mongoose 文档:

var mongoose = require("mongoose");
// Use bluebird
mongoose.Promise = require('bluebird');

我应该使用哪一个?

最佳答案

这里有两个讨论

People asked for promises support and Mongoose is quite a mature library now over 4 years old- mpromise was chosen because it looked like a good way to add promise support at a time.

所以我们可以从bluebird中找到这个用法,

Promise.promisifyAll(require("mongoose"));

mongoose.Promise = require('bluebird'); will make mongoose use native promises. You should be able to use any ES6 promise constructor though, but right now we only test with native, bluebird, and Q

所以他们俩都OK。

关于mongoose - 将 bluebird 与 mongoose 一起使用的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35929768/

相关文章:

node.js - MongoDB:尝试使用聚合 $unwind 来获取嵌入式文档

javascript - 将elasticsearch js 与bluebird 结合起来

node.js - Mongoose/MongoDB 中嵌套模式的正确模式是什么?

javascript - 使用 "extend"util 设置 Mongoose 模型实例属性

javascript - MongoDB 聚合两个不同的组

node.js - Push 或 addToSet 不适用于 Express、Node 和 mongoose(获取响应 { ok : 0, n : 0, nModified: 0 })

javascript - 如果第一个 promise 失败,则返回第二个 promise 结果

javascript - Bluebird promise 与 Swagger : return is not a function

javascript - Promises 不适用于 IE11

javascript - 等待 Bluebird promise 解决后再继续