执行ng lint --fix时REFUND_ERRORED被加大量等号致代码损坏,如何解决?
解决ng lint --fix自动添加多余==========的问题
1. 先修复已损坏的代码
把被污染的代码恢复成正常逻辑,同时统一用严格相等运算符避免隐式类型转换问题:
[class.fail]=" item.data === 'CANCELLED' || item.data === 'EXPIRED' || item.data === 'RISKY' || item.data === 'REFUND_ERRORED' || item.status === 'fail' "
2. 排查并禁用触发问题的lint规则
这个问题是某个lint规则误把REFUND_ERRORED当成需要添加分隔线的特殊标记,优先排查以下几类规则:
- 注释格式校验类规则(比如
comment-format) - 自定义代码风格规则
- 字符串相关格式规则
操作步骤:
- 打开项目根目录的
.eslintrc.json(旧Angular项目可能是tslint.json) - 在
rules字段中临时禁用可疑规则,示例(ESLint):"rules": { "comment-format": "off" } - 重新执行
ng lint --fix,验证问题是否消失
3. 精准配置规则(可选)
如果不想完全禁用规则,可以给目标规则添加例外,允许REFUND_ERRORED不受该规则约束(以ESLint的comment-format为例):
"rules": { "comment-format": ["error", "check-space", { "exceptions": ["REFUND_ERRORED"] }] }
4. 更新lint相关依赖
如果是依赖包的bug导致误判,尝试更新相关依赖:
npm update @angular/cli eslint @angular-eslint/eslint-plugin
内容的提问来源于stack exchange,提问作者by3by3byt3
相关产品推荐
相关产品推荐

