公司目前有几个项目用到这个,都是 umi.js + antd,我对 umi 也不太熟悉。 现在我要为新项目搭建一个后台,但是我不太喜欢 umi,感觉对于这个项目来说有点复杂,而且想尽量用 Context 来共享数据。
- 对于一个比较小型的后台,有必要使用 umi 吗?
- 有什么比较好用的路由库推荐嘛?
公司目前有几个项目用到这个,都是 umi.js + antd,我对 umi 也不太熟悉。 现在我要为新项目搭建一个后台,但是我不太喜欢 umi,感觉对于这个项目来说有点复杂,而且想尽量用 Context 来共享数据。
|
1
小型的后台其实没必要,自建路由也不是很费事,umi 主要是习惯之后出活比较快,缺点是更新换代还挺快的,有时候老点的东西就不支持了
|
|
2
我之前把项目的 umi 干掉了,所有东西直接用 webpack 。
路由直接自己遍历目录动态生成代码。 umijs 的文档太不专业了,就跟那种笔记技术博客一个水平。而且很多时候你光看 umi 文档还不够,你还得看他封装的东西的文档。到头来还不如自己搭建来的方便 |
|
3
@noe132 我也觉得文档有一些随意,而且这种好像是集大成的框架我有点不敢用。
我对直接遍历目录生成路由比较感兴趣,不过没找到相关的轮子,大佬你这生成是在 babel 里实现的,还是 webpack ?我觉得这种方案比较舒服,我都差点想上 next.js 了 |
|
4
umi2 和 umi3,怎么说呢,现在网上还有很多教程是 2 的,拿来入门的表示被坑的不要不要的,还是 vite 简洁清楚。
|
|
5
@jworg 我发现有不少人拿 vite 和 umi 对比,我感觉在功能上 umi ≈ vite + 应用框架的样子?
vite 感觉不错,不过之前没用过,这次不敢在公司项目上用。vite 会有什么坑吗? |
|
6
同不喜欢 umi,连 antd pro 都不用,直接 cra+antd 的 prolayout,剩下的自己撸
发下自己写的 https://github.com/basefas/react-antd-admin |
|
7
曾经用了好长一段时间 umi,后面换到 Next.js 了
|
|
CbdySep 3, 2021 via Android
8
不建议用,另外这是阿里出品
|
|
10
珍爱生命,远离 Umi 和 Antd
|
|
flybluewolfSep 3, 2021
12
@vision1900 +1
|
|
13
不需要 webpack 也不需要 babel 。
直接遍历目录,生成一个树结构,然后根据树结构生成一个 route.ts 里面包括所有的页面的动态 import,然后在 App.tsx 里递归生成对应的 路由元素。 整个解析的代码也就 100 多行。最后就是开发时开一个 watch 服务,检测到文件变化就重新生成一遍就行 https://pastebin.com/bALG20WF |
|
rockjikeSep 3, 2021
15
@noe132 直接遍历目录,生成一个树结构,然后根据树结构生成一个 route.ts 无法支持路由参数灵活的场景, 一般都以配置化为主, 小型项目走约定式路由
|
|
x940727Sep 3, 2021
17
@vision1900 远离 Antd 没问题,React 还有啥好的 UI 框架吗?
|
|
jworgSep 3, 2021
19
@IvanLi127 我只是个人用用,写写自己的网页,感觉还没遇到过坑,关键词都能很快搜到解决方法,反倒是 umi 总是搜着搜着发现都是 umi2 的配置 /解决方式。
|
|
20
管理后台一般不需要状态管理,hooks + antd procomponents 足够了,开发又快。
|
|
21
Vite+TailwindCSS 一把梭,ant design 太重了,umi 个人觉得文档太简略了,封装过头.
|
|
CbdySep 3, 2021
22
|
|
tuomasiSep 4, 2021
23
阿里出品,必属"精品"
|
|
dream4everSep 4, 2021
24
@noe132 这代码看着 真舒服,好评。
|
|
JerryChaSep 4, 2021
25
小心阿里
|
|
26
看见很多说自己搭的,我的经验是自己搭还不如用 umi 这种第三方的脚手架呢,至少大家有个统一的文档可以看。
自己搭的架子,文档 90%比 umi 还差,除非这项目完全是你自己做,否则会给其他人带来更痛苦的困扰。 当然我也不用 umi 了,因为阿里的开源项目太个人。之前有个项目,umi 升级后发现文档里只有 yarn 和 ts,而不提供 npm 和 js 的说明了。这是逼着我团队里所有人都学 yarn 和 ts 吗?我知道他一定想说 yarn 和 ts 好,但谁规定好东西一定要学的?又不是个人单打独斗,能带着一群新手出活,才是团队的用法。 还是尽量用 cra 这种用户量大的吧,至少有问题的时候容易搜到答案 |
|
27
感觉 umi 对于一般的需求太重了,还有就是 vite 是真香,自己在重构的时候写了个模版,https://github.com/zenquan/react-admin-template.git
路由库 react-router 算是标配吧 |
|
vision1900Sep 6, 2021
28
@x940727 Chakra
|
|
ccyu220Sep 6, 2021
29
上部分认同,但是 yarn 和 ts 这段不认同。
|
|
fernandoxuSep 6, 2021
30
出活快,但提供的很多方案并不优秀
|
|
noobmaSep 6, 2021
31
我自己被用过 rax 初始化项目、接手过别人的 umi 项目,都碰到过一个问题,比如 package.json 中 rax 或者 umi 的版本号是 ^1.1.0 这样的,但是过了一段时间他们发版本后,ci 上构建或者把 node_modules 删掉后重装,就会遇到打包的时候报错,项目跑不起来的问题,还要自己去把 "^" 删掉写死版本重新安装才行,这种不是主版本号的升级会有这种问题,让人很无语😓
所以我如果自己能选择的话,会尽量不用这 2 个😓 |
|
32
公司一直用 antd,在 antd 3.12.4 这个基础上拉下来自己修改了一些组件,已经开发的项目 50+以上。
干活很快,非常方便,个人觉得 ant design 是我用过最好的 ui 框架。 我不是阿里人,但是那些讽刺 ant design 的我看不下去,你真的用过吗? 做了几个项目? |
|
strangeFishSep 6, 2021
34
我一开始也挺抗拒 umi 的,但是后面用久了,还是比自己搭香,除非是高度定制化的项目。
另外上面那个版本变动导致翻车的,你们不上传 package.lock.json 的吗?跑 npm ci 是读 lock 的。 |
|
vision1900Sep 6, 2021
35
@asvencoop 只要稍稍做过一点 UI 定制化就知道 Antd 有多难用,尝试一下 Chakra 就知道 Antd 是多么原始
|
|
nanxiaobeiOct 31, 2021
36
cra + antd
|
|
nanxiaobeiOct 31, 2021
37
umi 这玩意太丑太重了,完全没必要。
出了问题不只得研究自己代码了,还得研究 umi |
|
38
@nanxiaobei 认同,已经抛弃 umi 了
|
|
whevetherNov 22, 2021
39
@IvanLi127 现在 react-router v6 不在需要 umi 那种路由写法。也能跟 vue angular 之类的写 routes 或组件写法.
|