如何缩短超长代码行解决ESLint max-len规则报错问题
ESLint max-len 规则超长报错解决方案
问题核心原因
单引号、双引号包裹的普通JavaScript字符串不支持直接跨行书写,直接在字符串中间按回车换行,会被JS解析为独立代码片段,直接触发语法错误导致代码无法运行。
可行解决方法
字符串拼接法(全场景兼容推荐)
把长字符串拆成多段短字符串,每段长度控制在120字符以内,段与段之间用+连接,换行后的内容做适当缩进对齐即可,不会改变最终字符串内容,也完全符合ESLint规则:{ actualTask: 'Актуальне питання? ', answer: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem " + "Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown " + "printer took a galley of type and scrambled it to make a type specimen book." },ES6模板字符串法(现代项目适用)
如果项目支持ES6+语法(绝大多数当前前端/Node.js项目都已支持),可以把长字符串的外层引号替换为反引号`,模板字符串原生支持跨行书写,直接在合适位置换行即可:{ actualTask: 'Актуальне питання? ', answer: `Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.` },注意:模板字符串会保留代码里的换行和缩进空白,如果业务场景不希望字符串内出现多余换行/空格,优先使用字符串拼接法。
单行规则跳过(特殊场景应急用,不推荐滥用)
如果遇到确实无法拆分的长内容(比如超长正则、不可截断的链接),可以在对应代码行上方加注释,临时跳过该行的max-len检查:{ actualTask: 'Актуальне питання? ', // eslint-disable-next-line max-len answer: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book." },
报错参考截图

内容的提问来源于stack exchange,提问作者Anta
相关产品推荐
相关产品推荐

