专题归档 · 2026 年 3 月(编辑分组,非实际写作日期)
VS Code 提示 TS/JS Language Service 连续崩溃:我先分清是谁在运行
从鼠标悬停一直 Loading 到 TS Server 崩溃提示,分离 TypeScript 版本、扩展影响与大型项目资源占用的候选原因。
#blog
旧笔记里记录过一种编辑器状态:鼠标悬停代码时类型信息一直转圈,IntelliSense 和自动补全都不工作,右下角出现了类似“JS/TS language service 5 分钟内崩溃多次”的警告。
提示文本里提到了 GitHub Copilot Chat、Vue Volar 等扩展,但**“可能与扩展有关”不等于已经证明某个扩展造成崩溃**。语言服务实际运行在哪个进程、用了哪份 TypeScript 版本、是否有第三方插件注入,才是需要进一步确认的部分。
先确认异常发生在哪一层
我会把这类问题分成几层:
- 编辑器层:VS Code 本身是否持续正常,问题只发生在 TS/JS 语言服务?
- TypeScript Server:项目使用工作区版本还是 VS Code 内置版本,日志里究竟有没有致命异常?
- 扩展层:禁用可疑扩展后问题是否消失,重新启用是否能复现?
- 工程层:是否把生成目录、过大的依赖图或意外的文件监控范围交给了语言服务?
- 资源层:内存、CPU 或文件句柄是否在崩溃前持续异常?
单纯重启 TS Server 有时只能恢复一段时间;如果问题来自大型工作区或插件与版本不兼容,还可能复发。
这段记录有哪些证据限制
我会先对照 TypeScript Server 的崩溃日志、项目版本和扩展启用状态。即使禁用某个扩展后暂时恢复,也需要再次复现,才能确定它是否真的参与了崩溃。
我保留的教训是:不要把语言服务崩溃当成 TypeScript 代码本身报错。先分清进程、版本、插件和工作区规模,定位才能从“重启试试看”推进到可复现的结论。