来自bluebird doc:
// Mongoose
var Promise = require("bluebird");
Promise.promisifyAll(require("mongoose"));
来自mongoose doc:
var mongoose = require("mongoose");
// Use bluebird
mongoose.Promise = require('bluebird');
我应该使用哪一个?
答案 0 :(得分:2)
这是两个讨论
人们要求提供支持,Mongoose是一个相当成熟的图书馆,现在已经超过4年了 - 因为它看起来像是一次增加承诺支持的好方法。
所以我们可以从bluebird中找到这个用法,
Promise.promisifyAll(require("mongoose"));
mongoose.Promise = require('bluebird');
会让mongoose使用原生承诺。你应该可以使用任何ES6 promise构造函数,但是现在我们只测试native,bluebird和Q
所以他们两个都没问题。