WebStorm 标红拼写错误是因为默认启用了独立的拼写检查(Spelling Inspection),它扫描标识符中的疑似拼写错误并用波浪线标出,不影响代码运行;可通过 Settings → Editor → Inspections 中禁用 Spelling 检查项关闭,推荐全局关闭。

为什么 WebStorm 会标红拼写错误而不是语法错误
WebStorm 默认启用了拼写检查(Spelling Inspection),它独立于语法/语义检查,专门扫描标识符(如变量名、函数名、字符串字面量)中的“疑似拼写错误”,用波浪线下划线标出。这不是语法报错,不会影响运行,但容易和 Unresolved variable 或 Unused symbol 混淆。
关闭拼写检查的两种方式(推荐关全局)
拼写检查默认作用于所有语言文件,包括 JS/TS/HTML/JSON —— 如果你不需要它,直接关掉最省心:
- 打开
Settings / Preferences→Editor→Inspections - 在搜索框输入
Spelling,找到Spelling检查项(位于General分类下) - 取消勾选左侧复选框(不是点右边齿轮)
- 点击
OK生效,无需重启
注意:这个设置是项目级的,如果想让所有新项目也默认关闭,需在 Settings 窗口左下角点 Restore defaults 旁边的 Copy to Project → Default Settings,再取消勾选。
只想关某类文件的拼写检查(比如只关 JS 里的)
如果你仍希望在注释或文档中保留拼写提示,但不想被代码标识符干扰,可以按语言禁用:
- 在同一个
Inspections页面,展开Spelling项 - 点右侧齿轮图标 →
Configure inspection scope - 选择
Only in comments and strings(推荐)或自定义范围,比如排除JavaScript和TypeScript文件类型 - 保存后,
const userNmae = 'test'这种就不会被标红了,但注释里的// recieve data仍可能提示
这种配置更细,但容易漏掉某些嵌入式上下文(比如 JSX 中的属性名、Vue 模板里的 v-model 绑定),不如直接关全局来得彻底。
关掉后还看到波浪线?检查是否是其他检查在干扰
拼写检查关掉后仍有下划线,大概率是别的检查在起作用:
-
Typo:这是拼写检查的旧名称,旧版本 WebStorm 可能仍显示为Typo,确保它也被禁用 -
Hard coded string或Spell checker插件:第三方插件可能自带拼写功能,去Settings→Plugins禁用Spell Checker - 误以为是拼写问题,实际是
ESLint或TSLint报的camelcase规则(比如user_name被标红),这类要改 ESLint 配置,不是拼写检查控制的
最稳妥的办法:把鼠标悬停在波浪线下划线上,看弹出的提示文字 —— 如果开头是 Typo: 或 Spelling mistake:,才是拼写检查;如果是 ESLint: 或 Identifier 'xxx' is not in camel case.,就得去配规则了。


















