Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 类型脚本包括和文件路径与代码识别_Javascript_Typescript_Autocomplete_Visual Studio Code_Tsconfig - Fatal编程技术网

Javascript 类型脚本包括和文件路径与代码识别

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

我已经为将我的tsconfig文件包含到VS代码中而奋斗了一段时间。 虽然我的代码编译得很好,但我经常会收到VS代码报告的错误,因为VS代码没有将tsconfig文件与当前ts文件关联

我通过执行以下命令来检查main.ts文件是否与VS代码中的任何tsconfig相关联:

类型脚本:转到项目配置

我收到一个错误(见下面的链接),告诉我没有找到Tconfig。 您还可以在链接图像中看到文件夹结构

简要概述一下,结构如下所示:

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代码不能识别所有文件)