tsc编译器和VS Code的语言服务之间的版本不匹配

Viv*_*Dev 43 visual-studio-code

我刚刚开始使用Visual Studio Code,当我创建一个名为index.html的新文件时,我会看到此警告消息

全局安装的tsc编译器(1.0.3.0)与VS Code的语言服务(1.8.10)之间的版本不匹配

有人可以指导我,我必须做些什么来解决这个问题.

这是严重还是我可以忽略.我用Google搜索但无法获得更多信息

谢谢

在此输入图像描述

Rar*_*ers 28

我将此添加到我的settings.json文件中,通过preferences > Workspace Settings以下方式访问

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

现在我不再收到此错误,并在屏幕的右下角显示我已安装的Typescript的当前版本.

  • 在Windows上,当我使用`"typescript.tsdk":"node_modules/typescript/lib"`时,我收到警告`路径c:\ temp\typescript\code \node_modules\typescript\lib不指向有效tsserver安装.回归捆绑的TypeScript版本.我不得不使用完整路径.`"typescript.tsdk":"C:\\ Users \\ wekel \\ AppData \\ Roaming \\npm \\node_modules \\ typescript \\ lib"`我正在使用VS Code 1.9.1. (2认同)

raf*_*ten 19

[更新] VS Code 1.6 now ships with TypeScript 2.0.3.

我刚刚安装了最新的Typescript,v.2.0.3v.1.5.3在macOS Sierra上安装了VS Code .出于某种原因,完全遵循官方文档并不适合我.

这是我如何使它工作:

在全局安装了最新版本之后: npm i -g typescript,我将以下行添加到我的settings.json文件中(打开cmd + ,):

"typescript.tsdk": "/usr/local/lib/node_modules/typescript/lib",

希望这有助于其他人.

[更新]如@ptpaterson在下面的评论中提到的,在Windows上的路径是:"typescript.tsdk": "C:/Users/{user_name}/AppData/Roaming/npm/node_modules/typescript/lib/"

  • `"typescript.tsdk":Windows上的"C:/ Users/{user_name}/AppData/Roaming/npm/node_modules/typescript/lib /"` 但这就是我所需要的. (4认同)

and*_*uta 10

您必须更改Visual Code正在使用的TypeScript版本以匹配您安装的版本:

https://code.visualstudio.com/docs/languages/typescript#_using-newer-typescript-versions

以上内容来自以下链接:

如果要使用较新版本的TypeScript,可以定义指向包含TypeScript tsserver.js文件的目录的typescript.tsdk设置("文件">"首选项">"用户/工作区设置").

您可以使用npm list typescript找到安装位置,tsserver.js通常位于lib文件夹下.

例如:

{
    "typescript.tsdk": "node_modules/typescript/lib"
}
Run Code Online (Sandbox Code Playgroud)


kwo*_*ood 9

您必须更新您的Typescript安装并在之后重新启动Code:

npm install -g typescript
Run Code Online (Sandbox Code Playgroud)

要么

npm install -g typescript@1.8.10
Run Code Online (Sandbox Code Playgroud)

如果有效,则不应再显示该消息.


Joh*_*ohn 8

生成此错误是因为我在System Path变量中引用了较旧的TypeScript安装:

C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\
Run Code Online (Sandbox Code Playgroud)

删除此条目后,Visual Studio代码错误已解决.

但是,我的TypeScript文件无法转换,因为构建操作无法找到该tsc.exe文件.

安装SDK(通过Visual Studio或通过手动*.visx安装)时,将安装一个tsc.exe文件并更新PATH环境变量以引用此文件所在的文件夹(参见上文).

还有另一种方法可以使用node.js在Windows环境中转换文件:

  • 安装node.js. 安装包可以在这里找到.
  • 使用npm安装TypeScript:

    npm install -g typescript

    这会将TypeScript文件添加到您的配置AppData文件文件夹:

    C:\Users\{your_user_name}\AppData\Roaming\npm\node_modules\typescript\lib

  • 配置Visual Studio代码用户 settings.json文件以引用此文件夹:

    {
    "typescript.tsdk": "C:\\Users\\{your_user_name}\\AppData\\Roaming\\npm\\node_modules\\typescript\\lib"
    }
  • 添加/更新用户 PATH环境变量以引用包含该tsc.cmd文件的文件夹:

    %USERPROFILE%\AppData\Roaming\npm


Bar*_*nar 5

上述解决方案都不适用于我 - 首先这是我想要更新到最新版本的全局 tsc。

我做了一些调查后发现问题出在系统的 PATH 变量上;tsc.cmd(连同tscserver.cmd)存在于以下位置:

  • c:\Program Files\nodejs - npm.exe 和 node.exe 所在的位置
  • %USERPROFILE%\AppData\Roaming\npm - 全局包所在

您可以做的是处理环境\用户变量,以便首先从%USERPROFILE%而不是Program Files解析tsc命令。

快速而肮脏的方法是从Program Files路径中删除tsc.cmdtscserver.cmd