今天看到一个去年的老帖子:《How do you feel about AntD?》

10 天前
 bojue

最近工作需要重新基于 And React 项目开发,无意中看到一个帖子:

https://www.reddit.com/r/reactjs/comments/1dz9k6p/how_do_you_feel_about_antd/

1449 次点击
所在节点    前端开发
13 条回复
cat
10 天前
以前很喜欢用 ant design ,但最近一年开新坑基本都是 shadcn ui 了,或者 mantine
june4
10 天前
最近新开个项目,打算试试 heroui (原 nextui)。

之前用过 MUI ,体验一般,且 M2 的设计也有点过时。但我想要的 v8 M3 设计似乎开发完全卡住了,遥遥无期的感觉,所以这次不选了。

antd 给我一种设计不专业的感觉,所以从来是在我选择之外。
bojue
10 天前
@cat @june4 我们自己买的 kendo ,也过时了,国外的设计,国产组价库的区别还是很大的。

公司的项目我在用 Vue Antd ,Ng Antd ,设计风格还是比较合格的,只要不定制样式感觉够用。

最近遇到一个需求,多主题查不查文档一脸懵逼,感觉 HTML 结构没有规划好导致样式很凌乱(国内语义化真的很差)。

上家公司基于 React Antd 设计团队调整了一版,到现在看也没过时。个人项目没资源改造,想尝试一些新的 UI 组件库。


之前乎子上有人面试问到了感觉有点雕花的感觉不深入,我自居的创业产品涉及到 ToC 组件库开发,关注这个帖子主要是了解一些 UI 组件库的优缺点,Antd 我感觉 TOB/G/C 够用,大家参考下
XTTX
10 天前
MUI Antd 这种复杂组件库已经过时了。
shadcn 的几个基础设计理念 比如 composition, own the code ,cva, 让组件库好用太多。

我记得以前用 MUI ,要改个提示点颜色,找半天 google, 每个版本还不一样。
自从有了 shadcn , 其他的组件库都变得好用了, 整体模式都学习 shadcn.
bug51
10 天前
发展太猛了
Mithril
10 天前
这类东西非常适合不太专业的前端,比如全栈或者后端转型的那种,快速糊一个大概还看得过去的 UI 。该有的功能都有,凑合用也没啥明显的 Bug 。

也不用考虑太多细节,性能,兼容性。反正你做个企业内部用的破系统,撑死了也就几百上千人用。开发从前端到后端就你一个,那自然怎么省事怎么来。组件库有的功能自动带上,组件库没有的功能也不会给你做。反正后面还排着一大把的需求呢,屎上雕花这种需求领导根本不在乎。

你如果养了一个前端团队,那肯定要自己搞了。特别是 AI 越来越普及,总得证明自己的价值。一套内部用的,样式风格等等都契合企业风格的组件库,多迭代几个版本都能养活前端+设计+测试三个团队的 KPI 了。

但一个内部系统就你一个前端开发。你跟领导说后面五十个需求暂停一下,你要花一两个月搞一个特别牛逼,能适配多种浏览器,五彩斑斓的黑全覆盖的主题切换器,你看领导砍不砍你。
bojue
10 天前
@XTTX @bug51 收藏了一个聚合站,能把人挑☁️了 https://ui-libs.vercel.app/
bojue
10 天前
@Mithril 传统工业和军工下线更低,类似 MES ,ERP ,ICMS 定制项目,后端同事写的东西真的没眼看。

公司项目上,我自己也会选择一个省事的项目组件库,不管是领导还是公司都有工程上的考量。

不过最近做 toC 发现国内的组件库偏向 toB 和 toG ,基于数据驱动的场景,后端数据结构定了页面也定得七七八八。包括好多产品经理自己的原型图都是照着 AntD 设计的,从产品->设计->开发->用户,沟通成本最低,设计和开发可以做到并行执行,项目上线周期可能缩小个 20%。

做 ToC 的业务在开源上魔改很多组件,举个例子做 toC 的一个需求:客户列表轮播的功能,市面上可能有 10 中动态交互,但是找不到一个组件库很好的解决。
dfkjgklfdjg
9 天前
@bojue #8 ,从产品设计出发。把一些常见、常用的功能组件抽象提取出来的,基本上都是一些 2B 、2G 的管理后台类型项目,定制化不会太多,稍作 theme 的定制就可以满足绝大部分的工作需求。
而 2C 产品会有很大程度上的定制,并且功能类型也不确定,并不一定需要各种表单和他变了,所以 shadcn 这种高可定制化的设计理念就会更游刃有余一些。

----
从工作上触发,AntD 这种上一个时代的 UI 库使用起来足够简单,即使把没有前端基础的后端临时拉过来也可以做的挺好。
但是你把 shadcn 这套设计理念去交给没有前端基础的后端去做的话,会增加非常多的学习成本和心智负担。

----
至于优劣之分。很多时候判断一个东西是否成功 or 优秀,并不是去考量他的代码实现和设计理念是否🐂🍺,而是它对用户来说是否好用。
这个"用户"不光会是指实际使用软件的终端用户,也会是一线开发和项目经理。

- 比如说你觉得 JQuery 是否成功和优秀。
bojue
9 天前
@dfkjgklfdjg 我没说 Antd 不好,我自己在调研自己需求的组件库,发现从 Antd => Semi => Tailwind CSS ,比如:daisyui/shadcn ,设计,交互,可定制性和美观度更现代一点(起码在 ToC 上来说)。

我的产品基本上和后台管理系统没有关系,主要针对海外 toc 非开发者产品,产品生态上来说,后期需要把涉及的组件库开放出去共建,至于涉及的 toc 的定制化来说,涉及到通用组件/行业组件/业务组件/定制组件几个维度先开发着。
dfkjgklfdjg
9 天前
@bojue #10 ,所以按照你的描述,感觉你的需求其实不一定是 UI 组件库的思路切入。是不是可以用插件组件的形式更合适?或者说 shadcn 这种需要的时候 add 到项目中来用的方式。这样开放共建会更合适一些。
chesha1
9 天前
@XTTX #4 shadcn/ui 本体太玩具了,一些本身很常见的功能还要自己手写,如果需求大众化 antd 和 mui 完全够用

比如日历快速切换月份年份这个功能,shadn/ui 在几个月前才有,之前的版本只能一个月一个月切换,要去上一年的同一个月得点 12 下鼠标。社区说了这个功能至少一两年了,也有 PR ,结果官方就是拖着
bojue
9 天前
@dfkjgklfdjg #11

[组件库( Component Library )] :本质是「标准化、可复用的 “零件集合”」,目标是解决 “重复造轮子” 的问题。
[插件( Plugin )] :本质是「可插拔的 “功能扩展模块”」,目标是解决 “原有系统功能不足” 的问题。

从定义上也可以理解成插件。

会把组件集成的钩子开放出去,客户和第三方 push 到插件市场,类似 Arco 的插件市场的逻辑,

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

https://www.v2ex.com/t/1157642

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

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

© 2021 V2EX