Javascript 类型脚本包括和文件路径与代码识别
我已经为将我的tsconfig文件包含到VS代码中而奋斗了一段时间。 虽然我的代码编译得很好,但我经常会收到VS代码报告的错误,因为VS代码没有将tsconfig文件与当前ts文件关联 我通过执行以下命令来检查main.ts文件是否与VS代码中的任何tsconfig相关联: 类型脚本:转到项目配置 我收到一个错误(见下面的链接),告诉我没有找到Tconfig。 您还可以在链接图像中看到文件夹结构 简要概述一下,结构如下所示:Javascript 类型脚本包括和文件路径与代码识别,javascript,typescript,autocomplete,visual-studio-code,tsconfig,Javascript,Typescript,Autocomplete,Visual Studio Code,Tsconfig,我已经为将我的tsconfig文件包含到VS代码中而奋斗了一段时间。 虽然我的代码编译得很好,但我经常会收到VS代码报告的错误,因为VS代码没有将tsconfig文件与当前ts文件关联 我通过执行以下命令来检查main.ts文件是否与VS代码中的任何tsconfig相关联: 类型脚本:转到项目配置 我收到一个错误(见下面的链接),告诉我没有找到Tconfig。 您还可以在链接图像中看到文件夹结构 简要概述一下,结构如下所示: root `-- development `--client
root
`-- development
`--client
|
|--code
| |--.. various
| `-- main.ts
|
`--config
|--.. various
`--tsconfig.json
{
"compilerOptions": {
"module": "es2015",
"target": "es2017",
"moduleResolution": "node",
"sourceMap": true,
"noImplicitAny": false,
"allowSyntheticDefaultImports": true,
"jsx": "react"
},
"include": [
"./../code/**/*"
],
"files": [
"./../code/main.ts"
]
}
我的tsconfig.json如下所示:
root
`-- development
`--client
|
|--code
| |--.. various
| `-- main.ts
|
`--config
|--.. various
`--tsconfig.json
{
"compilerOptions": {
"module": "es2015",
"target": "es2017",
"moduleResolution": "node",
"sourceMap": true,
"noImplicitAny": false,
"allowSyntheticDefaultImports": true,
"jsx": "react"
},
"include": [
"./../code/**/*"
],
"files": [
"./../code/main.ts"
]
}
将
tsconfig.json
移动到项目的根目录,并相应地更改路径:
{
"compilerOptions": {
"module": "es2015",
"target": "es2017",
"moduleResolution": "node",
"sourceMap": true,
"noImplicitAny": false,
"allowSyntheticDefaultImports": true,
"jsx": "react"
},
"include": [
"development/client/code/**/*"
],
"files": [
"development/client/code/main.ts"
]
}
VSCode似乎从ts文件中查找tsconfig() 如果将客户端tsconfig向上移动到一个目录,它应该可以工作
root
`-- development
`--client
|--tsconfig.json
|
|--code
| |--.. various
| `-- main.ts
|
`--config
`--.. various
正如注释所示,您可能希望将
tsconfig.base.json
添加到root
文件夹中,并将其包含在每个tsconfig.json
中,这样您就可以拥有一些常用/默认设置。从TS文档()中可以看出tsconfig.json
必须位于项目根目录中,这就是为什么VSCode只在那里查找它。我有多个tsconfig,因此不能简单地将它们放在根文件夹中。还有一些即使不在根文件夹中也能识别(正如上面提到的,编译器可以识别它们,但不是所有的VS代码都能识别)。我有多个TSConfig,因此不能简单地将它们放在根文件夹中。此外,即使不在根文件夹中,也可以识别其中的一些文件(如前所述,编译器可以识别所有文件,但VS代码不能识别所有文件)