软件开发很重要的一个点是:don't repeat yourself,不要重复造轮子,如果社区已有成熟方案,直接使用即可,我个人比较喜欢小巧功能简单的库,不太喜欢大的 UI 库,比如 antd 太重,容易污染全局样式,而 clsx 很小巧,功能单一,自己也可以实现替换。
一个库应该满足以下几个要求才会被采用:
- 代码量小(避免打包体积过大)
- 功能单一(不需要大而全,选小而精)
- 零依赖或者少量依赖(避免二级依赖污染)
- 广泛使用(下载量高而不是 github star 数高)
其次应该尽量使用英文+谷歌搜索,避免中文社区的坑,举个例子,当我想要找一个 API mock 的库,中文搜索 “前端 API mock”,查到的很多都是 mockjs 这个库,英文搜索可以找到 mswjs 这个库,把相关的库找到后在 npmtrends 上面进行对比:
json-server-vs-miragejs-vs-moxios-vs-msw-vs-wiremock-vs-mockjs
可以看到 mswjs 下载量遥遥领先,代码写个 demo 就可以发现确实很好用,最终采用。
写过一篇文章:这些常用 npm 包,帮你迅速提高开发效率,介绍了近 30 个常用的库,可以提高你的开发效率。
大家还用过哪些优质的库可以评论区补充一下~