Typescript 如何为不在@types中的键入配置tsconfig.json?
我正在使用一个tsconfig.json文件来指定我想在我的应用程序中使用哪些类型Typescript 如何为不在@types中的键入配置tsconfig.json?,typescript,typescript-typings,Typescript,Typescript Typings,我正在使用一个tsconfig.json文件来指定我想在我的应用程序中使用哪些类型 { "compilerOptions": { "types" : ["node", "lodash", "express"] } } 这将从/node\u modules/@types/node、/node\u modules/@types/lodash和/node\u modules/@types/expres导入打字 我的问题是如何为自包含模块配置打字 我的示例是zone.js包,
{
"compilerOptions": {
"types" : ["node", "lodash", "express"]
}
}
这将从/node\u modules/@types/node
、/node\u modules/@types/lodash
和/node\u modules/@types/expres
导入打字
我的问题是如何为自包含模块配置打字
我的示例是zone.js包,它同时具有库代码和类型定义
- ./node_modules/zone.js/dist/zone.js
- ./node_modules/zone.js/dist/zone.min.js
- /node\u modules/zone.js/dist/zone.js.d.ts
我应该在tsconfig.json文件中放入什么来包含
zone.js.d.ts
?您可以将该文件放在任何地方,但您需要告诉编译器,可以将其添加到tsconfig.json
中,也可以作为/
文件。对于tsconfig
添加include
字段:
{
"compileOnSave": false,
"compilerOptions": {
..
},
"include": [
"zone.d.ts",
]
}
只需将
zone.js
添加到tsconfig.json
中的类型
:
{
"compilerOptions": {
"types" : ["node", "lodash", "express", "zone.js"]
}
}
请注意,您不必像这样包含所有类型。自动包含@types/*
包中的类型定义
因此,您可以删除tsconfig.json
中的类型声明,所有@types/*
包都将被自动引用
为了使zone.js
正常工作,您可以将其包含在一个文件中,如下所示:
/// <reference types="zone.js" />
//
或者,如果您想在整个项目中使用它,您可以在项目的根目录中添加一个
index.d.ts
,并在那里放置int引用。将其添加到类型
数组中是有效的。奇怪的是,我第一次尝试它时,它对我不起作用。我想我的编辑落后了。