为什么VS Code javascript intellisense依赖于我打开的文件?

时间:2017-07-05 19:24:24

标签: javascript visual-studio-code javascript-intellisense

我有一个项目使用.js和.es6文件(Rails,虽然我认为不重要)我正在尝试使用VS Code的javascript intellisense per these instructions。我有一个jsconfig.json文件:

{
    "include": [
        "app/assets/javascripts/**/*",
        "vendor/assets/javascripts/**/*"
    ],
    "compilerOptions": {
        "target": "ES6",
        "checkJs": true
    }
}

在根目录下,所有javascript都在include部分中提到的文件夹中。我还在根目录下创建了一个globals.d.ts文件。

如果我在VS Code中打开globals.d.ts然后运行Typescript: Restart TS server,则VS Code会识别javascript文件中的全局变量。但是,如果我再关闭globals.d.ts并再次运行Typescript: Restart TS server,则VS Code无法识别全局变量。在其他javascript文件中创建的全局变量也会发生这种情况。例如,假设Class.es6定义了一个类。如果我在VS Code中打开Class.es6,我只会获得该课程的智能感知。

我不确定为什么我的设置无效,以及为什么它依赖于我在VS Code中打开的文件。

1 个答案:

答案 0 :(得分:0)

由于您明确指定了include,因此只有那些包含的文件才会成为您的javascript项目的一部分。如果您希望将global.d.ts提取到include,还需要{{1}}