最简单方式是禁用 problems.decorations.enabled,它仅隐藏所有诊断波浪线而不影响后台检查;若仅中文注释误报,应关闭 cspell.enabled 或禁用 code spell checker;按语言可分别关闭 javascript.validate.enable、typescript.validate.enable 等。

禁用 VS Code 全局错误波浪线(红色/绿色下划线)
直接关掉所有错误提示波浪线,最简单的方式是关闭 problems.decorations.enabled。它控制的是编辑器里所有诊断信息(语法错误、类型警告、拼写误报等)的视觉装饰——也就是你看到的那些波浪线本身。
这个设置不关语言服务器、不关 lint 工具,只隐藏它们的“画线行为”,所以代码检查仍在后台运行,只是你看不到红线绿线了。
- 按
Ctrl + ,打开设置,搜索problems.decorations.enabled,取消勾选 - 或手动编辑
settings.json,添加:{"problems.decorations.enabled": false} - 注意:该设置影响整个 VS Code,所有工作区和文件都生效
只关拼写检查波浪线(中文注释/字符串红波浪线)
满屏中文注释被标红,大概率不是语法问题,而是拼写检查器在“瞎报警”。VS Code 自带的 cSpell 或第三方插件(如 Code Spell Checker)会把中文当“非法单词”处理。
真正该关的是拼写检查,而不是整个诊断系统——否则你会错过真实的类型错误或未定义变量。
- 搜索并关闭
cSpell.enabled(如果装了官方拼写扩展) - 若用了
Code Spell Checker插件,在扩展页点击齿轮 → “禁用”即可 - 对 TypeScript/JavaScript 项目,额外确认
editor.spellcheck是否为false(部分版本需显式设)
按语言关闭语法检查(JS/TS/Python 等误报)
某些语言自带的验证器(比如 TS Server 对 JS 的检查)会在没有 .d.ts 或类型声明时疯狂报错,尤其在快速原型阶段,这些提示反而干扰判断。
关掉它们不等于放弃类型安全,只是把检查时机交给构建或 CI 阶段,编辑时更轻量。
- JavaScript:设
javascript.validate.enable为false - TypeScript:设
typescript.validate.enable为false - Python:设
python.linting.enabled为false,或换用python.analysis.extraPaths补全路径而非直接关 - C/C++:设
C_Cpp.errorSquiggles为disabled
临时隐藏波浪线但保留诊断(适合调试误报)
有时候你不确定是插件冲突还是配置错位,又不想全局关功能,可以先“隐身”波浪线,同时保留错误列表(Ctrl + Shift + M)和悬停提示。
这样既清爽,又能随时点开看具体哪条报错了——比直接关掉更容易定位问题源头。
- 在
settings.json中加:"editor.showUnused": false,
"editor.suggest.showWords": false,
"editor.occurrencesHighlight": false
- 配合
workbench.colorCustomizations隐藏特定波浪线颜色(不推荐,CSS 注入易失效且难维护) - 重点:务必检查右下角语言模式是否正确(比如
.js文件被识别成Plain Text,会导致所有检查失效)
最容易被忽略的一点:多个插件可能同时贡献波浪线。比如 ESLint + Pylint + cSpell + VAssistX 类插件叠加后,关掉一个根本没用。得一个个排查,从禁用全部插件开始,再逐个启用,观察波浪线何时复现。










