Typescript 2.0 @types不会自动引用

dmu*_*dro 13 typescript

使用TS 2.0 Beta我无法使新的@types工作.在我的代码中的某个地方:

import * as angular from 'angular';
Run Code Online (Sandbox Code Playgroud)

TS 2.0 @types:

npm install --save @types/angular
tsc
Run Code Online (Sandbox Code Playgroud)

编译器找不到d.ts文件:错误:(1,26)TS2307:找不到模块'angular'.

使用打字工具和全局(环境之前)依赖关系的当前(旧)方法没有问题.

我希望d.ts查找能够自动使用2.0,如下所述:

https://blogs.msdn.microsoft.com/typescript/2016/06/15/the-future-of-declaration-files/

也许我错过了什么?

Yak*_*ain 14

我和另一个文件有同样的问题 - tsc找不到node_modules/@ types/es6-shim.明确地向tsconfig.json添加类型有助于:

{
  "compilerOptions": {
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "module": "commonjs",
    "noEmit": true,
    "types":["es6-shim"],
    "sourceMap": true,
    "target": "es5"
  }
}
Run Code Online (Sandbox Code Playgroud)


cna*_*ney 0

我遇到了同样的问题,它可以通过 cli 成功构建,tsc app.ts但 gulp 构建会失败。就我而言,我需要确保 gulp 模块使用最新的 typescript 版本进行编译,而不是与模块捆绑的版本,即 for tsify,传递对较新编译器的引用:.plugin(tsify, {typescript: require('typescript')})

不确定这是否适用于您的情况。