被 antd 惯坏了,别的组件库用的很难受,大家有这种感觉吗?

2025 年 2 月 25 日
 asen001

我本人一直用 antd 开发,最近有点审美疲劳想找点新鲜玩意。 试了一圈英文社区推荐的组件库( shadcn mantine chakra 等),功能上都不如 antd 方便,不说太复杂的功能,异步关闭确认框这种常见的功能都得自己封装,不然就得哼哧哼哧写一大坨。 开发后台 dashboard 应用,除了 antd 还有别的更好的选择吗?

9893 次点击
所在节点    React
55 条回复
asen001
2025 年 2 月 25 日
@XTTX #7 如果细细打磨产品,用这个可能合适。而且默认的主题太素了,领导一看就不行
XTTX
2025 年 2 月 25 日
@asen001 https://www.pomocal.com/ 肯定不能直接用 shadcn 默认颜色,css 和 tailwind 里设置一下就行了。整体风格上能达到统一。
sleepm
2025 年 2 月 25 日
semi 字节的
FlashEcho
2025 年 2 月 25 日
@XTTX #7 shadcn 生态差 antd 和 mui 太多了,而且官方更新缓慢,功能不行是事实,不适合大部分写业务的
joetao123
2025 年 2 月 25 日
在 ChatGPT 的加持下,类似 shadcn/ui 和 tailwindcss 的组合用来起很舒服,灵活度很大,大模型支持也很好,搭配 v0.dev 体验更上一层楼。
我之前也是从 antd+umi 转过来的,现在更喜欢用 shadcn/ui+tailwindcss+vite 的组合。这是用这个组合做的一个 demo: https://xryder.cn 。
XTTX
2025 年 2 月 25 日
@chesha1 都已经是事实, 那还有啥好说的. 给个 demo 让我学习学习。
zhengfan2016
2025 年 2 月 25 日
弱弱的问一下,antd 是不是 bug 很多,这个月面试碰到一个主用 vue3 的面试官,它问我用 antd 有没有碰到什么 bug ,我回答没有,它说它用 antd 碰到的 bug 很多,真的是这样吗
zhengfan2016
2025 年 2 月 25 日
promise 关闭确认不难吧,这个自己封一下 50 行内就解决了,我的习惯就是自己封。

至于其他的我没碰到场景,也不知道 antd 比 shadcn 有什么优势。

说实话,我感觉我有点被 shadcn 这些 tailwind ui 库惯坏了,切换其他 ui 库就完全不会改组件样式了
zhengfan2016
2025 年 2 月 25 日
@chesha1 哥们,你们用 mui 一般怎么改样式的,就比如把下拉框的 rounded 改成 12px ,border 边距 2px ,水波纹去掉,按设计稿的样式 100%还原那种,我之前试过在 style 里改,有时加了 important 都不能覆盖掉 mui 的原来的样式,想办法覆盖样式很费时间。
FlashEcho
2025 年 2 月 25 日
@XTTX #26 没有 demo ,但是看一眼官方就知道生态差距了,没什么好争论的。我唯一用的 react 组件库就是 shadcn/ui ,虽然用,但是感觉确实是玩具
FlashEcho
2025 年 2 月 25 日
@XTTX #26 打错字了,“官方”应为“官网”
XTTX
2025 年 2 月 25 日
@chesha1 生态这个词高级啊。
yhxx
2025 年 2 月 25 日
@zhengfan2016 这是面试技巧了

下次可以这样回他:我上个月遇到了 Antd 里 Message 组件的静态方法无效的问题,起初我以为是 Context 丢失的问题,因为静态方法并不会消费上下文,它会独立于当前 React 生命周期,balabala ,但是随后验证发现不是这个问题,深入 Antd 源码发现是 ReactDOM.render 方法没有成功,但是前几天还是正常的,随后深入了解发现 React19 中 react-dom 调整了 balabala 。。。随后扯一段 createRoot 、hydrateRoot 看看能不能唬住他。
也要说一下我的临时解决方案是 balabala ,长久方案是 xxxx
还可以继续锁依赖版本,pnpm 之类的再扯一段,这面试时间一共就一小时,不就耗掉了一大半了

只是随便举个例子,不一定严谨,不能直接说没遇到过呀,这就没法聊下去了


至于 antd 本身的 bug ,直接去 issue 区看看就知道了
996jiucai
2025 年 2 月 25 日
antd 用的人多,虽然有之前的圣诞节事件。但是大家还是在用的。
用的人多,就是一些比较明显的 bug 不会有。如果你图新鲜用那种人少的库,自己做项目还行。真用到公司项目上面,就很麻烦,不是功能不完整,就是有些基础 bug 。大家就是上个班而已,怎么省事怎么省心怎么快,怎么来。要是想造轮子,下班自己造去。
Mithril
2025 年 2 月 25 日
antd 的好处就是各种常见功能都有,非常适合领导一拍屁股,“你看看那谁家的 xxx 功能,对就要个那样的玩意”,这种开发模式

缺点就是你想要做个别人家没有的功能就开始头疼了,折腾半天总也调不对的时候就还不如找个啥都没有的框架从头弄。
foufoufm
2025 年 2 月 26 日
@murmur 请教一下是帆软的 bi 吗?
DCNGAWE
2025 年 2 月 26 日
https://semi.design/ 这个不错 抖音的
julio867
2025 年 2 月 26 日
早几年用过 AntDesign 的 vue 版本~
比较了阿里、腾讯、抖音、饿了么等的 UI 框架,最后感觉抖音的 semi-design 的 UI 是我喜欢的风格,所以最后就用在我自己开发的后台管理系统~
真正用起来发现,如果只是满足简单的 CRUD 是可以用的,但如果考虑到更好的用户体验和交互,就需要做二次封装,甚至需要自己开发新的组件~
而且 semi 的问题是,它不是面向社区使用的,而是优先满足抖音自己内部的需要,所以官方也一直不出 Pro 脚手架~
另外,作为前端开发者,我越发觉得一个东西越“通用”就越“复杂”~
xingguang
2025 年 2 月 26 日
以前用的 antd 比较多,现在用 mui ,是在是感觉很多地方不方便,mui 修改组件的默认样式有好多种办法,还有不同的优先级,一不小心就被覆盖了优先级了,更可恨的是 mui 组件的样式被人在全局的 css 定义中修改了而且加上了 important ,导致很多时候会被这个 important 覆盖,挺烦人的
wzzx
2025 年 2 月 26 日
material ui 自定义比 antd 好

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/1114152

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX