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

7 天前
 bojue

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

https://ex.noerr.eu.org/t/1157642

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

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

© 2021 V2EX