RxJS迁移后:rxjs-tslint与rxjs-tslint-rules规则使用疑问
解答你的RxJS TSLint规则疑问
首先得明确两个包的核心定位,这能帮你理清该怎么处理:
rxjs-tslint:它本质是一次性迁移助手,核心价值是自带的
rxjs-5-to-6-migrate工具,能自动帮你把RxJS 5的代码转换成RxJS 6的写法(比如把链式调用改成pipe、更新导入路径等)。它附带的规则都是为迁移过程服务的临时检查项,并不是为长期代码质量维护设计的,迁移完成后这些规则基本就没用了。rxjs-tslint-rules:这是一个专注于RxJS最佳实践的长期TSLint规则包,你提到的
rxjs-collapse-imports、rxjs-pipeable-operators-only、rxjs-no-static-observable-methods、rxjs-proper-imports这些规则,都是这个包提供的、用于持续约束代码风格和最佳实践的规则。
回到你的问题:
完成RxJS 6迁移后,若想继续用这些规则做TSLint检查,不需要把rxjs-tslint加入devDependencies,你只需要:
- 保留已经在devDependencies里的
rxjs-tslint-rules(它才是提供这些长期规则的包); - 确保你的
tslint.json里已经配置了这些规则,比如:
{ "rulesDirectory": ["node_modules/rxjs-tslint-rules/dist"], "rules": { "rxjs-collapse-imports": true, "rxjs-pipeable-operators-only": true, "rxjs-no-static-observable-methods": true, "rxjs-proper-imports": true } }
至于rxjs-tslint,迁移完成后你完全可以选择卸载它——它的使命就是帮你完成版本迁移,长期的代码检查还是靠rxjs-tslint-rules来支撑。
内容的提问来源于stack exchange,提问作者Alexander Abakumov
相关产品推荐
相关产品推荐

