TypeScript项目VSCode IntelliSense卡顿的根本原因是TSServer在大型项目中反复全量检查和AST构建,需配置skipLibCheck、composite、include等并重启TSServer。
为什么 TypeScript 项目在 VSCode 里
卡顿?
根本原因不是 VSCode 本身慢,而是 TypeScript 语言服务(TSServer)在大型项目中反复做全量类型检查和 AST 构建。尤其当
被纳入检查范围、存在大量
或未配置
时,TSServer 内存占用飙升,响应延迟明显——你敲完
后等 2–3 秒才弹出提示,就是典型症状。
必须加的
配置项
以下几项不是“可选优化”,而是大型 TS 项目的必备底线配置,缺一不可:
—— 关闭对
中类型声明的检查,提速最显著;
+
—— 启用增量编译,避免每次重算整个项目;
显式列出源码路径(如
),严禁留空或写
,否则 TSServer 会扫描
、
等无关目录;
确认没有
指向巨量
目录,如有,精简为仅需的包(如
)。
VSCode 工作区级设置要关掉这些
用户级设置会影响所有项目,但工作区级(
)才能精准控制当前项目行为:
VSCode 1.118
微软正式发布 Visual Studio Code 1.118 版本 。本次更新重点强化了 AI 开发体验与企业管理能力,其中最引人注目的是新增 Copilot CLI 远程控制功能,允许开发者通过手机或网页远程监控和接管 AI 会话 。同时,为了提高 AI 的运行性价比,新版本优化了令牌缓存策略以降低成本 。此外,1.118 版还引入了 Chronicle 本地历史追踪、TypeScript 7.0 支持以及更严格的企业级访问管控 。
下载
改为
—— 大项目下自动补全
依赖名会触发额外解析;
或设为
(而非默认
)—— 全量自动导入建议在 10k+ 文件项目里极易卡死;
对
和
设为
—— 减少非关键场景的提示触发;
确保
(开发调试时除外),日志写入本身就会拖慢 TSServer。
别忽略
对纯 JS 项目的干扰
如果你在 JS 项目里也遇到补全延迟,大概率是 VSCode 自动启用了 JS 语言服务并尝试类型推导。解决方式很直接:
根目录存在
时,必须包含
;
删掉
也不行——VSCode 会 fallback 到更慢的默认推导逻辑;
若项目混用 TS/JS,优先统一用
,并在
设为
,让 TSServer 统一接管。
真正卡住的地方往往不是配置本身,而是改完
后没重启 TSServer:按
(macOS
),输入
手动触发,别等它自己恢复。
IntelliSensenode_modulesdeclare moduleskipLibCheck.tsconfig.json"skipLibCheck": truenode_modules"composite": true"declarationMap": false"include"["src/**/*"]["./**/*"]distbuild"typeRoots"@types["node_modules/@types"].vscode/settings.json"typescript.preferences.includePackageJsonAutoImports": "auto""off"package.json"typescript.suggest.autoImports": false"inline""true""editor.quickSuggestions""other""comments"false"typescript.tsserver.log": "off"jsconfig.jsonjsconfig.json"checkJs": falsejsconfig.jsontsconfig.jsoncompilerOptions.allowJstruetsconfig.jsonCtrl+Shift+PCmd+Shift+PRestart TS Server