在JSX中使用Lodash forEach时触发ESLint no-irregular-whitespace错误求助
解决ESLint的
no-irregular-whitespace错误(Lodash forEach场景) 我之前也踩过这个坑!其实这个错误和Lodash的forEach本身没啥关系,核心问题是你的代码里混入了非标准的空白字符——比如全角空格、不间断空格(NBSP)或者其他编辑器里看不见的奇怪空格,ESLint的no-irregular-whitespace规则会严格拦截这些不符合规范的空白。
给你几个具体的解决步骤:
- 先精准定位问题位置:ESLint的错误提示里肯定会告诉你具体的行号和列号,直接跳转到对应位置。建议打开编辑器的「显示不可见字符」功能(VS Code按
Ctrl+Shift+P搜「Toggle Render Whitespace」,WebStorm在视图选项里找),打开后那些不规则空格会显示成特殊标记(比如全角空格是方块,NBSP是小圆点),一眼就能找到。 - 替换成标准空格:把找到的所有非标准空白,直接换成普通的半角空格(就是你按键盘空格键出来的那种),比如把代码里的全角空格、复制来的奇怪空格全部替换掉。
- 预防后续再踩坑:
- 写代码时尽量关闭输入法的全角模式,避免不小心输入全角空格;
- 从网页、文档复制代码后,一定要检查一遍,很多外部内容里会藏着NBSP这类特殊空格;
- 可以给编辑器加自动处理规则,比如VS Code里开启「Trim Trailing Whitespace」设置,或者安装能自动转换不规则空格的插件。
举个错误示例(注意arr后面的全角空格):
_.forEach(arr , (item) => { console.log(item); });
修正后(换成普通半角空格):
_.forEach(arr, (item) => { console.log(item); });
内容的提问来源于stack exchange,提问作者raju
相关产品推荐
相关产品推荐

