Ответ 1
Вам нужно подключить библиотеку обещаний (q, bluebird, es6 one...)
mongoose.Promise = require('bluebird');
Некоторое время я получаю эту ошибку, и я решил исправить ее сегодня, но через час, пытаясь ее исправить, я могу найти решение.
Когда я тестирую модель пользователя Mongoose, эта ошибка/предупреждение генерируется:
Mongoose: mpromise (mongoose default promise library) is deprecated, plug in your own promise library instead: http://mongoosejs.com/docs/promises.html
Вот мой тест:
1 var assert = require('chai').assert;
2 var mongoose = require('mongoose');
3 var clearDB = require('mocha-mongoose')(require('../../config/database').uri, { skip: ['workouts'] });
4 var database = require('../../config/database').connect;
5
6 var User = require('../../app/models/user');
7 var user = new User({});
8
9 var req_body = {
10 username: "garyvee",
11 email: "[email protected]",
12 password: "secret"
13 };
14
15 describe('User', function() {
16 beforeEach(function(done) {
17 user.username = "johnsmith";
18 user.email = "[email protected]";
19 user.password = "secret";
20 done();
21 });
22
23 it('can be saved', function() {
24 return user.save(function(err: any) {
25 assert.isNull(err);
26 })
27 });
28 });
Я думаю, что это имеет какое-то отношение к .save
но я не знаю, как это исправить. Может ли кто-нибудь помочь мне и сказать, как исправить это, чтобы ошибка/предупреждение не показывались.
Вам нужно подключить библиотеку обещаний (q, bluebird, es6 one...)
mongoose.Promise = require('bluebird');
Из узла 4.x вы можете просто использовать обещания ES6:
const mongoose = require('mongoose');
mongoose.Promise = Promise;
Вот пример, который может помочь. Используя модули es6 (вместо CommonJS), это работает для меня:
// mongoose Promise library is deprecated, using es6's:
import es6Promise from 'es6-promise';
mongoose.Promise = es6Promise.Promise;
вы можете обратиться к Как использовать мангустский обещание - монго
содержание страницы:
На этой странице: http://mongoosejs.com/docs/promises.html
Название - это подключение вашей собственной библиотеки Promises