我正在使用 nodejs/typescript 和 mongodb 数据库开发一个应用程序。
为了查询数据库,我正在使用mongoose http://mongoosejs.com/index.html.
我刚刚读过 mongoose 文档中的一篇文章如何插入外部 Promise 库 http://mongoosejs.com/docs/promises.html这很简单:
import mongoose = require("mongoose");
import Promise = require("bluebird");
mongoose.Promise = Promise;
这样做效果很好。但我想扩展/覆盖返回的承诺的类型。
这是一个函数的示例:
public getModel= () => {
return MyModel.findOne().exec();
}
该函数返回一个_mongoose.Promise<MyModel>
我想归还一只蓝知更鸟Promise<MyModel>
因为我知道这是蓝鸟的承诺。
是否有办法更改/扩展/覆盖猫鼬查询的返回类型?
我应该为我的应用程序编写自定义定义文件吗?任何其他建议将不胜感激。
Thanks !
Promise
导出为猫鼬中的变量,这样你就可以转换mongoose
首先命名空间为任意,然后设置Promise
给其他人。
- if you are using
q
lib.
- install
npm install --save q @types/q
first. tsc
版本 >= 2.0。
- 然后加
(<any>mongoose).Promise = Q.Promise;
- using
bluebird
lib, add code below.
import Bluebird = require("bluebird");
(<any>mongoose).Promise = Bluebird;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)