有一个vite+react+typescript项目,在工作电脑上一切正常。但是,在我家里的电脑运行,始终无法检测到typescript环境。即使出现错误的ts语法,也不会有报错提示,效果如下:

我故意将一个string类型,传入一个boolean,但是vscode编辑没有出现任何错误提示,并且将鼠标放在ant design UI 标签上,也不会有任何反应。找了很大一会儿,也未能发现问题出现在哪里。即使重新装vscode结果依然如此,对于个已经习惯ts开发者来说,无法检测到ts环境开发,会是一件很难受的事情。后来,通过ChatGPT才知道,原来是@builtin typescript-language-features
这个扩展插件
没有启用!
@builtin typescript-language-features是vscode内置的一个自带的一个插件,无需安装。在扩展商店当中搜索,@builtin typescript-language-features,就会发现:

处于禁用状态。
在 VSCode 中:
-
@builtin
代表这是 VSCode 内置的扩展,不是你自己从 Marketplace 装的。 -
typescript-language-features
就是 VSCode 自带的 TypeScript/JavaScript 语言服务插件,它提供了:-
类型检查
-
自动补全
-
跳转定义 / 查找引用
-
悬停提示
-
重构、格式化
-
IntelliSense
-
👉 所以你在 VSCode 的扩展面板搜索 @builtin typescript-language-features
,会看到它,通常是默认启用的。
有时候开发者会遇到 TS 提示失效 的情况,就是因为这个内置插件被 禁用 或者被其他插件(比如 vscode-typescript-next
、volar
等)接管了。
当@builtin typescript-language-features处于禁用状态的时候,会出现
TS 提示失效 的情况,在setting当中,搜索typescript,就会发现很多关于ts的东西都没有出现:

搞清楚该插件的作用以后,点击启用,效果如下:

这是时候,再回头看刚才的typescript就会发现,很多之前看到不到的列表都出现了。然后,再看项目当中刚才设置为string类型,但是初始化传入一个false的值,就会发现很明显的错误类型错误提示,如下:

至此,该问题圆满解决,同时希望本文能够对出现类似问题的开发者,提供帮助。