ESLint规则咨询:如何将对象属性访问修正为object.property
问题
我给Node.js项目配置了ESLint的no-multi-spaces规则(配置为'no-multi-spaces': ['error']),现在这个规则会把object .property修正成object .property,还会把换行的代码:
object. property
修正成:
object . property
但我想要的修复结果是object.property,应该配置哪条ESLint规则?
答案
你需要启用并配置operator-linebreak规则,它专门用来控制运算符的换行行为,针对点运算符(.)设置合适的规则,就能让ESLint自动把换行的结构合并成单行的object.property。
示例配置如下:
"operator-linebreak": ["error", "none", { "overrides": { ".": "none" } }]
这个配置会强制点运算符不换行,ESLint在修复时就会把object.\nproperty合并为object.property。
另外,你可以补充调整no-multi-spaces的配置,避免它在点运算符前添加不必要的空格:
"no-multi-spaces": ["error", { "exceptions": { "Property": true } }]
内容的提问来源于stack exchange,提问作者Serhii
相关产品推荐
相关产品推荐

