Oxlint 能否替代 ESLint?
Oxlint 能否替代 ESLint?
导语
Oxlint 是 Rust 写的 JS/TS lint 工具,基准测试比 ESLint 快 50~100 倍。但这个数字只代表”空跑 lint”,不代表”替换 ESLint 配置”。本文从兼容性、生态、迁移成本三个维度给你一个可落地的判断。
速度:数字是真的,但要看场景
Oxlint 的 Rust 实现确实快,官方 benchmark 显示在大型项目里比 ESLint 快 50~100 倍。但关键问题是:你的瓶颈真的是 lint 速度吗?
- 小项目(<1k 文件):ESLint 通常在 200ms 内完成,Oxlint 的 2ms 优势感知不强。
- 中大型项目(10k+ 文件):ESLint 可能跑到 5s+,Oxlint 的 50ms 才有体感价值。
- CI 场景:Oxlint 的价值最大,因为每次提交都要跑 lint,积少成多。
规则覆盖:差距在缩小,但还没完全对齐
ESLint 有 200+ 内置规则,加上社区插件覆盖的场景极广。Oxlint 目前的策略是:
- 优先覆盖高频规则:未使用变量、安全漏洞、性能反模式。
- 兼容层:通过
eslint-plugin-oxlint让 Oxlint 跑 ESLint 规则,但规则执行逻辑还是 ESLint 的 JS 实现,速度优势打折扣。
实际迁移建议
- 先跑 Oxlint 做增量:在 CI 里加一个 Oxlint 步骤,只检查新增代码。不影响现有流程,立刻拿到速度收益。
- 保留 ESLint 做格式化:Oxlint 不做代码格式化,Prettier 或 ESLint
--fix仍需保留。 - 大项目等稳定版:Oxlint 已到 v1.0 stable,但如果你的 ESLint 配置很重(自定义 rules、复杂插件),建议再观察一个季度。
结论
Oxlint 不是 ESLint 的完全替代,而是”增量 lint 加速器”。最务实的组合是:Oxlint 跑快检查 + ESLint 跑复杂规则 + Prettier 做格式化。等 Oxlint 生态更成熟后,再考虑全面替换。
评论区
0 条评论
登录后可评论。













