webstorm 中 typescript 错误提示变中文需在 settings → languages & frameworks → typescript 的 additional compiler options 中填入 --locale zh-cn,并完全退出重启;该设置作用于 ts 语言服务层,影响悬停、跳转及快速修复提示,但不改变 ide 界面语言。

WebStorm 的 TypeScript 错误提示默认是英文的,但 --locale zh-CN 参数能直接让 TS 编译器输出中文报错——这不是 UI 翻译,而是语言服务层的真实本地化,效果比“汉化界面”更实用。
TS 报错怎么变中文?关键在 TypeScript 编译器参数
WebStorm 里 TS 的错误提示(比如 Cannot find name 'React')来自内置的 TypeScript Server,它支持通过 locale 参数切换语言。这个设置和 IDE 界面语言无关,也不依赖插件。
- 打开
Settings → Languages & Frameworks → TypeScript - 找到
Additional compiler options输入框 - 填入
--locale zh-CN(注意:中间有空格,zh-CN区分大小写) - 点
OK并**完全退出 WebStorm 再重启**(热重载不生效)
改完后,光标悬停、Ctrl + Click 跳转、甚至 Alt + Enter 的快速修复提示都会变成中文。但注意:这只是 TS 语言服务的提示,不是整个 IDE 的翻译。
为什么加了 --locale zh-CN 还是英文?常见断点排查
参数写对了却没生效,大概率卡在这几个地方:
-
Additional compiler options输入框被其他参数占满,比如已有--noImplicitAny,新参数没加逗号或空格隔开,导致整个选项被忽略 - 项目启用了自定义
tsconfig.json,且里面写了"locale": "en"—— 它会覆盖 IDE 设置 - WebStorm 使用了全局安装的 TypeScript(勾选了
Use TypeScript version下的Project preferences),而那个全局版本太老(--locale - 你正在用 WSL 或远程开发模式,实际运行的是远端 TS Server,本地设置无效
中文提示生效后,哪些内容还是英文?别误判为失败
这是正常设计,不是配置遗漏:
-
Quick Documentation(Ctrl + Q)里的 API 文档,来自 TypeScript Server 的 JSDoc 解析,语言包不接管这部分 - 终端(Terminal)中
tsc命令行输出、Git 提交信息、Node.js 崩溃堆栈,全由系统环境决定 - 代码补全里的参数说明(如函数签名后的英文注释),属于语言服务的类型推导结果,不在
--locale控制范围内 - 第三方插件(如 ESLint、Prettier)的警告文字,取决于插件自身是否实现多语言支持
最常被忽略的一点:如果你在 Linux 或 macOS 终端里用 open -a WebStorm 启动,IDE 可能继承终端的 LANG=C 环境变量,直接压制所有 locale 设置——这种情况下,哪怕参数全对,TS 提示也回退成英文。











