MongDB找不到Promisetypes定义

我创build了一个新的项目,安装了几个types定义(来自DefinitelyTyped),并创build了一个基本的src/go.ts文件。

每当我编译代码时,我会得到大量的TS2304: Cannot find name 'Promise'错误!
./typings/mongodb/index.d.ts引用Promise ,但编译器似乎没有find。
请注意,我也安装了dt〜promise。

截图 (左侧的错误,安装的types定义和应用程序代码在右侧)

typings.json内容:

 { "globalDependencies": { "dotenv": "registry:dt/dotenv#2.0.0+20160327131627", "express": "registry:dt/express#4.0.0+20160708185218", "express-serve-static-core": "registry:dt/express-serve-static-core#4.0.0+20160805091045", "mime": "registry:dt/mime#0.0.0+20160316155526", "mongodb": "registry:dt/mongodb#2.1.0+20160602142941", "mongoose": "registry:dt/mongoose#4.5.4+20160807120805", "mongoose-promise": "registry:dt/mongoose-promise#4.5.4+20160720003345", "node": "registry:dt/node#6.0.0+20160807145350", "promise": "registry:dt/promise#7.1.1+20160602154553", "serve-static": "registry:dt/serve-static#0.0.0+20160606155157" } } 

有什么想法吗?

我遇到了同样的问题(或多或less,使用@types代替types),并能够通过安装CoreJS的types定义来解决它。

截图

道歉链接到一个图书馆,这是我的第一篇文章,所以我不能提供超过两个链接每个职位。

图片说明:

  • 第一个屏幕截图显示类似的错误,MongoDB的types定义文件无法find'承诺'。
  • 安装CoreJS的types定义。 请注意,我通过NPM而不是types来获得我的types定义。 所以要做类似的事情你可以运行类似于:
    • typings install dt~core-js --save --global
  • 第三个屏幕截图显示了在输出no上没有错误的构build命令

我希望这能解决你的问题。

我有同样的问题安装最新版本的mongodb和mongoosetypes。

mongodb的新定义文件假定您使用的是ES6承诺,如果您将tsconfig.json中的tsconfig.json编译器的target更改为es6则应该这样做:

tsconfig.json:

 { "compilerOptions": { ... "target": "ES6", ... } } 

对于types: typings install core-js --ambient --save 。 这个对我有用。