簡體   English   中英

Typescript應用程序中“已棄用mpromise(貓鼬的默認promise庫)”

[英]“mpromise (mongoose's default promise library) is deprecated” in Typescript Application

如何從Typescript應用程序中解決“不建議使用mpromise(貓鼬的默認諾言庫)”。

我收到以下錯誤:

賦值表達式的左側不能為常量或只讀屬性。

我正在Angular 2中使用MEAN堆棧,並希望貓鼬使用bluebird promises庫。

當我嘗試按照Stack OverflowMongo上的這些說明進行操作時出現錯誤

老實說,我不確定我的問題是否只是缺乏Typescript知識,還是我做錯了其他事情。

"use strict";

import * as mongoose from 'mongoose';
var dbConst = require('../constants/db.json');
var bluebird = require("bluebird");

export class DBConfig {
    static init():void {
      const URL = (process.env.NODE_ENV === 'production') ? process.env.MONGOHQ_URL
                                                          : dbConst.localhost;

      mongoose.Promise = bluebird;     // <-- THIS IS WHERE ERROR OCCURS
      mongoose.connect(URL);
      mongoose.connection.on('error', console.error.bind(console, 'An error ocurred with the DB connection: '));
    }
};

我相信以下應該起作用:

import * as mongoose from "mongoose";
import * as bluebird from "bluebird";

//either this
(<any>mongoose).Promise = bluebird;

//OR pass it in as an option
const connection = mongoose.createConnection("mongodb://localhost:27017", { 
    promiseLibrary: bluebird
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM