在VSCode中无法检测到TypeScript版本,导致TS Intellisense无法工作。

5

全局安装 TypeScript

当执行 tsc --version 命令时,终端会输出以下内容:

tsc --version

// Output: Version 3.8.3
  • 我在状态栏中找不到TypeScript“版本”。

  • 从命令面板中选择TypeScript版本为空白。

对于TypeScript没有任何智能提示。

我该如何让它工作?


4
你是否禁用了内置的JavaScript和TypeScript语言功能扩展?在扩展视图中搜索“@builtin”以检查。 - Matt Bierner
我没有,我会尝试一下。 - GN.
1
对我来说没有被禁用,但我遇到了相同的问题。 - mt_xing
@MattBierner 这最终对我起作用了。 - dsomel21
1个回答

1

TypeScript TSDK

通常情况下,当一个项目出现像你遇到的这样的问题时,是因为项目和 vscode 没有明确地使用相同的 TypeScript 包。

在我解释之前,我想指出,除非 VS Code 打开了一个 TypeScript 文档,否则您将无法在状态栏中获得TypeScript 版本。此外,TypeScript 文档需要被识别为 TypeScript 文档,这可能需要您在文档中编写一些 TypeScript。另外,仅仅因为文件已经打开,并且被识别为 TypeScript 文件,并不意味着 VS Code 将只在状态栏中给出 TypeScript 版本。VSCode 将会给出当前聚焦的文件类型的版本。因此,如果您正在配置 "tsconfig.json 文件" 中的 TypeScript,并检查 TypeScript 版本以查看您更改的配置是否解决了问题,那么您只会得到 JSON 的版本,因为 tsconfig.json 是一个 JSON 文件。要查看 TypeScript 版本,您必须将焦点切换到 TypeScript 文件。



首先,作为最佳实践,请按照以下命令的顺序重新安装最新版本的TypeScript。
  • npm rm typescript
  • npm i -D typescript@latest

typescript.tsdk添加到您的settings.json文件中


将以下设置添加到您的./.vscode/settings.json文件中。将其添加到项目级别的settings.json文件被认为是最佳实践,因为项目级别的settings.json文件会覆盖全局配置。这样做是安全的,不会发生任何奇怪的事情。

// @file ".vscode/settings.json"

{
    "typescript.tsdk": "./node_modules/typescript/lib"
}

以上代码告诉 VS Code 和你的项目使用 TypeScript 安装程序,该程序位于你分配为 typescript.tsdk 的目录中。

添加配置后,通过按下 F1 并输入以下内容:"Developer: Reload Window" 来重启 VS Code。

当你看到我让你输入的名称选项时,请选择它,窗口将重新加载。

注意:退出 vscode 并手动重新打开同样有效,但速度较慢。



备选 TSDK 配置

您不必配置项目以使用项目的 TypeScript 包。您可以配置 VS Code 和您的项目,以使用您在计算机上安装的版本(或开发服务器等)。要使用系统级 TypeScript 安装,请将以下内容添加到您的 settings.json 文件中。


// @file ".vscode/settings.json"

{
    "typescript.tsdk": "/usr/local/lib/node_modules/typescript/lib"
}


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接