云行 AI 开发日记 - 9. 为什么弃掉 ESLint 和 Prettier

0 阅读2分钟

在现代前端开发中,ESLint 和 Prettier 一直是代码质量和格式统一的主力工具。ESLint 主要负责语法规则检查和代码风格统一,而 Prettier 则是最优秀的代码格式化工具。然而,我却一直想要抛弃掉这两个工具。

为什么在 ESLint 已经具备代码风格修复功能的情况下还需要 Prettier?这是因为 ESLint 主要专注于语法规则检查,在代码风格检查方面能力有限,所以需要 Prettier 来提供更强大的代码格式统一功能。但这种组合也带来了新的问题:两个工具虽然功能互补,却存在一些功能冲突。因此,使用 ESLint+Prettier 时,还需要引入 eslint-config-prettier 库来解决冲突。

除了他们之间的冲突,每次启动新项目时,都要根据项目特点重新配置 ESLint 和 Prettier 这两个"老大哥",而配置过程通常相当繁琐。此外,当需要进行更多语言规则检查时,还得引入更多的库和配置,比如 stylelint。

繁琐的配置仅仅是众多问题之一。虽然 ESLint+Prettier 功能号称强大,但其格式化效果并不理想,特别是在处理行宽限制方面。另外,它们也不支持 import 语句的自动导入和排序功能,要实现这些还得额外引入其他库。

ESLint 和 Prettier 虽然功能强大,但是也太不简洁、太不优雅了。为了实现基本的语法检查和代码格式化,就需要引入十多个依赖库,这对追求完美的开发者来说确实难以接受。

因此,这次在云行 AI 项目中,我选择使用 Biome 来替代 ESLint+Prettier。虽然 Biome 还存在一些小问题,但它已经能满足大部分项目需求。相比 ESLint+Prettier 的复杂配置和依赖管理,Biome 提供了更加简洁统一的解决方案。只需一个配置文件、一个依赖库就能解决所有问题,让整个前端开发清爽了许多。

Biome 的配置和使用不再赘述,感兴趣的可以查看官方文档,也可以查看我们项目的配置。

云行 AI 开源地址