跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • React 生态里的 umi.js,很好用吗?
未分類
5 9 月 2021

React 生态里的 umi.js,很好用吗?

React 生态里的 umi.js,很好用吗?

資深大佬 : IvanLi127 10

公司目前有几个项目用到这个,都是 umi.js + antd,我对 umi 也不太熟悉。 现在我要为新项目搭建一个后台,但是我不太喜欢 umi,感觉对于这个项目来说有点复杂,而且想尽量用 Context 来共享数据。

  1. 对于一个比较小型的后台,有必要使用 umi 吗?
  2. 有什么比较好用的路由库推荐嘛?
大佬有話說 (35)

  • 資深大佬 : xingguang

    小型的后台其实没必要,自建路由也不是很费事,umi 主要是习惯之后出活比较快,缺点是更新换代还挺快的,有时候老点的东西就不支持了

  • 資深大佬 : noe132

    我之前把项目的 umi 干掉了,所有东西直接用 webpack 。
    路由直接自己遍历目录动态生成代码。
    umijs 的文档太不专业了,就跟那种笔记技术博客一个水平。而且很多时候你光看 umi 文档还不够,你还得看他封装的东西的文档。到头来还不如自己搭建来的方便

  • 主 資深大佬 : IvanLi127

    @noe132 我也觉得文档有一些随意,而且这种好像是集大成的框架我有点不敢用。
    我对直接遍历目录生成路由比较感兴趣,不过没找到相关的轮子,大佬你这生成是在 babel 里实现的,还是 webpack ?我觉得这种方案比较舒服,我都差点想上 next.js 了

  • 資深大佬 : jworg

    umi2 和 umi3,怎么说呢,现在网上还有很多教程是 2 的,拿来入门的表示被坑的不要不要的,还是 vite 简洁清楚。

  • 主 資深大佬 : IvanLi127

    @jworg 我发现有不少人拿 vite 和 umi 对比,我感觉在功能上 umi ≈ vite + 应用框架的样子?
    vite 感觉不错,不过之前没用过,这次不敢在公司项目上用。vite 会有什么坑吗?

  • 資深大佬 : basefas

    同不喜欢 umi,连 antd pro 都不用,直接 cra+antd 的 prolayout,剩下的自己撸
    发下自己写的
    https://github.com/basefas/react-antd-admin

  • 資深大佬 : forsigner

    曾经用了好长一段时间 umi,后面换到 Next.js 了

  • 資深大佬 : Cbdy

    不建议用,另外这是阿里出品

  • 主 資深大佬 : IvanLi127

    @basefas 加个星星回去看看

  • 資深大佬 : vision1900

    珍爱生命,远离 Umi 和 Antd

  • 主 資深大佬 : IvanLi127

    @Cbdy 我当时看到有阿里的影子就很慌。
    我觉得这方面,阿里家的就 antd 能用了,哈哈(如果不去回忆按钮被狗啃过的那件事)。

  • 資深大佬 : flybluewolf

    @vision1900 +1

  • 資深大佬 : noe132

    不需要 webpack 也不需要 babel 。
    直接遍历目录,生成一个树结构,然后根据树结构生成一个 route.ts 里面包括所有的页面的动态 import,然后在 App.tsx 里递归生成对应的 路由元素。
    整个解析的代码也就 100 多行。最后就是开发时开一个 watch 服务,检测到文件变化就重新生成一遍就行
    https://pastebin.com/bALG20WF

  • 資深大佬 : basefas

    @IvanLi127 还有配合写的 Go 后端哈

  • 資深大佬 : rockjike

    @noe132 直接遍历目录,生成一个树结构,然后根据树结构生成一个 route.ts 无法支持路由参数灵活的场景, 一般都以配置化为主, 小型项目走约定式路由

  • 資深大佬 : noe132

    @rockjike 自己生成的好处是有啥需求可以直接改,想要啥结构都不是问题。用这种文档差劲的库,文档还没搞清楚,我自己写代码早就写完了。

  • 資深大佬 : x940727

    @vision1900 远离 Antd 没问题,React 还有啥好的 UI 框架吗?

  • 主 資深大佬 : IvanLi127

    @noe132 到时候我也试试,不过另启 watch 服务会不会导致多构建一次?

  • 資深大佬 : jworg

    @IvanLi127 我只是个人用用,写写自己的网页,感觉还没遇到过坑,关键词都能很快搜到解决方法,反倒是 umi 总是搜着搜着发现都是 umi2 的配置 /解决方式。

  • 資深大佬 : yikyo

    管理后台一般不需要状态管理,hooks + antd procomponents 足够了,开发又快。

  • 資深大佬 : xlsepiphone

    Vite+TailwindCSS 一把梭,ant design 太重了,umi 个人觉得文档太简略了,封装过头.

  • 資深大佬 : Cbdy

    @x940727
    https://github.com/enaqx/awesome-react
    https://github.com/brillout/awesome-react-components
    https://github.com/styled-components/awesome-styled-components

  • 資深大佬 : tuomasi

    阿里出品,必属”精品”

  • 資深大佬 : dream4ever

    @noe132 这代码看着 真舒服,好评。

  • 資深大佬 : JerryCha

    小心阿里

  • 資深大佬 : Rocketer

    看见很多说自己搭的,我的经验是自己搭还不如用 umi 这种第三方的脚手架呢,至少大家有个统一的文档可以看。
    自己搭的架子,文档 90%比 umi 还差,除非这项目完全是你自己做,否则会给其他人带来更痛苦的困扰。
    当然我也不用 umi 了,因为阿里的开源项目太个人。之前有个项目,umi 升级后发现文档里只有 yarn 和 ts,而不提供 npm 和 js 的说明了。这是逼着我团队里所有人都学 yarn 和 ts 吗?我知道他一定想说 yarn 和 ts 好,但谁规定好东西一定要学的?又不是个人单打独斗,能带着一群新手出活,才是团队的用法。
    还是尽量用 cra 这种用户量大的吧,至少有问题的时候容易搜到答案

  • 資深大佬 : jomsou

    感觉 umi 对于一般的需求太重了,还有就是 vite 是真香,自己在重构的时候写了个模版,https://github.com/zenquan/react-admin-template.git
    路由库 react-router 算是标配吧

  • 資深大佬 : vision1900

    @x940727 Chakra

  • 資深大佬 : ccyu220

    上部分认同,但是 yarn 和 ts 这段不认同。

  • 資深大佬 : fernandoxu

    出活快,但提供的很多方案并不优秀

  • 資深大佬 : noobma

    我自己被用过 rax 初始化项目、接手过别人的 umi 项目,都碰到过一个问题,比如 package.json 中 rax 或者 umi 的版本号是 ^1.1.0 这样的,但是过了一段时间他们发版本后,ci 上构建或者把 node_modules 删掉后重装,就会遇到打包的时候报错,项目跑不起来的问题,还要自己去把 “^” 删掉写死版本重新安装才行,这种不是主版本号的升级会有这种问题,让人很无语

  • 資深大佬 : asvencoop

    公司一直用 antd,在 antd 3.12.4 这个基础上拉下来自己修改了一些组件,已经开发的项目 50+以上。
    干活很快,非常方便,个人觉得 ant design 是我用过最好的 ui 框架。
    我不是阿里人,但是那些讽刺 ant design 的我看不下去,你真的用过吗? 做了几个项目?

  • 資深大佬 : jomsou

    @asvencoop antd 确实真的很全很好用,react 后台默认 antd,vue 默认 element

  • 資深大佬 : strangeFish

    我一开始也挺抗拒 umi 的,但是后面用久了,还是比自己搭香,除非是高度定制化的项目。
    另外上面那个版本变动导致翻车的,你们不上传 package.lock.json 的吗?跑 npm ci 是读 lock 的。

  • 資深大佬 : vision1900

    @asvencoop 只要稍稍做过一点 UI 定制化就知道 Antd 有多难用,尝试一下 Chakra 就知道 Antd 是多么原始

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具