【问题标题】:VSCode - Why tsconfig.json must be in the root directory to get autocomplete?VSCode - 为什么 tsconfig.json 必须在根目录中才能自动完成?
【发布时间】:2016-12-14 22:08:24
【问题描述】:

根据 Typescript 文档

目录中存在 tsconfig.json 文件表示 directory 是 TypeScript 项目的根目录。 tsconfig.json 文件 指定编译所需的根文件和编译器选项 项目。

在我的理解中,这意味着我可以有一些像下面这样的应用程序结构

+-- app
|  +-- src
|    +-- controllers 
|      +-- AppCtrl.ts 
|    +-- application.ts
|    +-- tsconfig.json
|  +-- assets

我注意到,为新的 .ts 文件自动完成的唯一方法是在我的根目录中创建另一个 tsconfig.json,例如

+-- app
+-- tsconfig.json    
|  +-- src
|    +-- controllers 
|      +-- AppCtrl.ts 
|    +-- application.ts

在第一个结构中,如果我在创建新的 ts 文件后重新加载 IDE,我可以获得自动完成功能。

vscode 中是否需要进行一些配置才能使第一个结构正常工作或者这是错误的?

更新:我也没有在根目录中打开文件时自动完成。重新启动 IDE 似乎可以修复它,但并不是每个创建的新文件都可以选择...

【问题讨论】:

  • 您是否安装了任何额外的打字稿扩展?
  • 另外,在上面的第二个布局中,您的意思是tsconfig.jsonappsrc 处于同一级别?
  • @seairth,没有额外的 typescript 扩展,但我安装了 EditorConfig。在我的第二个布局中,我将 json 文件放在根目录中,与 app 文件夹相同。
  • 我也有同样的问题,你是在github上打开vscode issue吗?

标签: intellisense visual-studio-code typescript1.8


【解决方案1】:

在 VSCode 中,您打开的文件夹是根文件夹。如您引用的文本中所述, tsconfig.json 必须位于该文件夹中。就是这么简单。

【讨论】:

  • 即使在根文件夹中 vscode 也是一团糟。只有在 IDE 中重新加载后,自动完成功能才适用于新文件。
  • 在这种情况下对我来说也是根目录是主脚本目录。我可能想像第一个示例一样打开一个包含 css 和 html 文件的应用程序文件夹。
【解决方案2】:

事实证明编辑器配置插件干扰了自动完成功能。在项目中包含.editorconfig 文件会破坏新文件的功能。

我还在第一个没有 editorconfig 文件的应用程序结构中测试了tsconfig.json,它可以工作。

【讨论】:

    猜你喜欢
    • 2021-07-07
    • 2020-02-23
    • 1970-01-01
    • 1970-01-01
    • 2017-06-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-27
    • 1970-01-01
    相关资源
    最近更新 更多