【发布时间】:2017-03-05 04:20:21
【问题描述】:
如何让 Typescript 2.0.3 加载安装到 node_modules 的任何包中的所有定义文件?
我编写了一个名为 somatic 的包,其中包含一个 index.d.ts 文件,并将其安装到一个测试项目中。我尝试了一切来加载定义,弄乱了我的 tsconfig.json 中的 types 和 typesRoot 选项,但无济于事。
这种隐式引用在几个小时前还有效,但突然停止工作。我已经重新安装了 TypeScript 2.0.3 和 Visual Studio Code,但问题仍然存在。
让 typescript 加载我的定义文件的唯一方法是添加对测试文件顶部的引用,如下所示:
/// <reference path="./node_modules/somatic/dist/index.d.ts" />
这是我的 tsconfig:
{
"compilerOptions": {
"allowJs": true,
"target": "es5",
"module": "commonjs",
"noImplicitAny": false,
"suppressImplicitAnyIndexErrors": true,
"removeComments": false,
"preserveConstEnums": true
}
}
【问题讨论】:
-
该包的
package.json文件包含此设置:"types": "/dist/somatic.d.ts"。我会尝试删除前导斜杠。 -
我编辑了somatic包的本地安装文件夹(在node_modules中)删除了前导斜杠,但问题还是一样
-
"...突然停止工作" ...那么在停止工作之前发生了什么变化?
-
这种情况以前发生过几次:我在一个d.ts文件中添加了一个新的类型声明,突然所有类型都无法识别(它们下面有波浪线)。我删除了刚刚添加的类型声明,问题仍然存在。在以前的情况下,重新安装 VsCode 可以解决问题,但这次没有
标签: javascript node.js typescript types