【发布时间】:2017-07-30 20:48:44
【问题描述】:
我的文件夹结构是这样的:
root
|-- app1
|-- node_modules
|-- tsconfig.json
|-- ts
|-- app2
|-- node_modules
|-- tsconfig.json
|-- ts
|-- shared
|-- ts
|-- typings
|-- missing-definitions.d.ts
|-- tsconfig.json
app1 和 app2 都是独立的应用程序,具有独立的依赖项和构建,但它们都通过 include SharedFile from '../../shared/ts/SharedFile'; 之类的操作使用 shared 访问一些文件。它们还包括missing-definitions.d.ts,它定义了一些没有@types 的模块。 shared 包含共享代码,但本身不是可构建的应用程序。
在构建应用程序时,tsc 运行良好,不会出现错误/警告。 vscode 在app1 和app2 文件中似乎也能正常工作。在 vscode 中打开共享文件时遇到问题。尽管shared/tsconfig.json 文件指向这些目录,vscode 似乎无法找到missing-definitions.d.ts 中定义的模块或完全存在于其他应用程序@types 中的模块的定义。
我的问题是——如何在每个文件夹中设置tsconfig.json 以使vscode 工作?我有点困惑是否应该在每个配置中使用baseUrl、paths、typeRoots 和/或include。
这是我为app1/tsconfig.json 准备的:
{
"compilerOptions": {
"module": "commonjs",
"target": "es5",
"baseUrl": ".",
"paths": {
"*" : [
"node_modules/*",
"node_modules/@types/*"
]
}
},
"include": [
"./ts/**/*.ts",
"../shared/typings/**/*.d.ts"
]
}
无论我为 shared/tsconfig.json 设置什么,似乎 vscode 都不会读取/解析它。
【问题讨论】:
标签: visual-studio typescript visual-studio-code tsconfig