【问题标题】:VS Code Intellisense for JS files without *.d.ts没有 *.d.ts 的 JS 文件的 VS Code Intellisense
【发布时间】:2017-09-22 22:06:38
【问题描述】:

在 VS Code 中,我如何包含用于 Intellisense/autocomplete 的 js 文件,而不在 Angular 中编译它们,也不为每个文件创建定义 *.d.ts 文件?

我有一个 Angular 4(实际上是使用 Angular 4 的 Ionic 3)项目,我正在尝试使用 VS Code 作为编辑器,但 JavaScript 文件的 Intellisense 似乎只适用于当前焦点文件,而不适用于其他文件JS 文件在同一个项目中,除非我在 tsconfig.json 文件的编译器选项中包含文件(位于路径 "www/js/*.js" 中):

"include": [
    "src/**/*.ts",
    "src/**/*.d.ts",
    "www/js/*.js"
  ],

问题是,我不想在编译中包含这些文件,因为它们已经在 index.html 模板中被引用。当我用它们编译时,我得到了错误。我只想将它们包含在 Intellesense 中,而不是编译它们。有什么方法可以实现这一点,而无需为每个文件创建 *.d.ts 文件?

目前我的解决方法是在编辑我不想编译的 js 时只使用不同的编辑器(Adobe Brackets),这样我就可以使用括号的智能感知(效果很好),但我更喜欢如果可能的话,只使用 VS Code 编辑器。

提前致谢!

【问题讨论】:

    标签: javascript angular ionic2 visual-studio-code


    【解决方案1】:

    经过更多的研究和大量的反复试验,我发现将jsconfig.json 文件添加到我的www 文件夹中(当我将它放在我的根文件夹中时它无法正常工作@ 987654323@文件),具有以下内容,那么它似乎至少使智能感知在js文件之间工作,尽管我仍然无法从ts文件到js文件。这是我的jsconfig.json 文件的内容:

    {
       "compilerOptions": {
        "target": "ES5",
        "module": "commonjs",
        "allowSyntheticDefaultImports": true
      },
      "include": [
        "js/*.js"
      ],
      "exclude": [
        "node_modules"
      ]
    }
    

    我希望这可以帮助遇到同样问题的其他人。

    如果有人找到一种方法让 Intellisense 为 js 文件工作,同时在 ts 文件中工作,请在此处发布答案。谢谢!

    【讨论】:

      猜你喜欢
      • 2022-08-19
      • 2021-05-17
      • 1970-01-01
      • 2019-09-07
      • 2018-11-11
      • 2017-11-08
      • 2020-06-23
      • 1970-01-01
      • 2019-10-28
      相关资源
      最近更新 更多