我研究很多页面,我也接受了几乎建议是添加mongoose.Promise = global.Promise;在连接之前。 这是我的代码:
var mongo = require('mongodb');
var mongoose = require('mongoose');
mongoose.Promise = global.Promise;
mongoose.connect('mongodb://localhost:27017/mean', function(err, res) {
if (err) {
console.log(err);
}
else {
console.log('Connected to DB');
}
});
第一次运行程序运行正常。数据被添加到数据库中。但是,在第二次,我仍然得到错误:
DeprecationWarning: Mongoose: mpromise (mongoose's default promise library) is deprecated, plug in your own promise library instead: http://mongoosejs.com/docs/promises.html
有人帮我解决这个问题吗?
答案 0 :(得分:-1)
这是一个警告,说明不推荐使用Mongoose的默认承诺库。
您应该使用第三方承诺库,例如Bluebird或Q。
以下是使用Bluebird承诺并使用它宣传Mongoose的示例:
import mongoose from "mongoose";
import Promise from "bluebird";
// promisify mongoose
Promise.promisifyAll(mongoose);
现在,您可以使用Mongoose作为承诺,它不会给您弃用的警告。