Vite 初体验及感受

2021-05-31 · 周一一般阵雨

今天尝试了下 Vite,用它提供的案例来构建一款 React 应用的脚手架。它基于 RollUp,这个也是我此前用 Svelte 框架时所使用的默认打包工具。Vite 的优点在于 Dev 启动很快,热更新迅速,它分离了依赖库和用户编写的代码,因为在绝大多数情况下,前者几乎无需反复构建。

我这个搭配 Vite 的新项目同时使用的有 React + TypeScript + Material UI,其中 Material UI 和 Antd 两者可谓是“竞争激烈”啊。

Material 的组件相较于 Antd 较为平庸,但是提供了很高的定制模块(但读文档的成本和快速实现难度也就高了),使用其内置的 makeStyles 可以使用类似 Less 的语法编写(覆盖)组件样式。也是作用域隔离,属于 CSS in JS,不会影响到其他相同组件。

Material UI 的优势是外观,Antd 在 UI 方面是弱项,很难二次高度定制除了颜色以外的东西。后台的业务操作逻辑较多,Material UI 内置的组件很难快速实现业务,为了使页面引入模块少量清晰,只能自己做二次封装,且部分功能需要完全自己编写,无法依赖于 Material UI。我认为还是应当结合项目实际情况做决定较为合理。

我个人主张的做法比较中立,既然用 Material UI 想要体现的是设计感,那还不如就自己做一套设计感,直接用 Less 或 Tailwind 实现界面框架,Antd 的组件去做业务逻辑,不使用 Antd 的界面组件去做界面。这个是目前来说,实现成本较低,库依赖少,业务输出较快的折中做法。

毕竟前端 UI 框架是业务逻辑主要涉及的地方,更换成本高。这也就是为什么 DA 这个项目至今还有很多地方在使用 Shopify 的 Polaris 框架。

关于构建器 Vite,虽然它还比较新颖,可能会有坑,但构建工具毕竟只是项目的其中一环,如果 Vite 实际表现仍有欠缺,依然可以以较低成本迁移成 CRA。

你可能会问,NextJS 不是挺好的么,为什么要用 CRA?不得不说 NextJS 确实是个很优秀的框架,但是它更适合于需要 SSR 的环境下(门户这种),后台我还是觉得 CSR 比较合适。当然 TypeScript 还是得有的,一个好的 TS 项目,确实可以很好的做成前端版本的 API 文档。

Paul

Paul

特立独行的一只前端菜狗。这篇日记编写大概耗时了 0 分钟,内容均为个人原创,并采用 CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!如本站内容对你有所帮助的话,不妨 捐助支持 一下?

近期评论

鲍小螺: 前辈多多指教!ahu: 后生可畏寻梦xunm: 真不错,板子很好看。timochan: 太惨了( ,更新暴毙,如果恢复没成功,数据也 dump 不出来鲍小螺: 在这部分对话中,广树和保罗继续讨论生活的不同方面。保罗提到了技术更新和国内的优秀 IT 技术。广树解释了在国内积累的经验如何在日本产生穿越的感觉,并表达了对于日本生活节奏的喜爱。他还提到了医疗水平的差异和对于生活方式的感受。保罗表示,通过动漫和现实的对比,艺术来源于现实,日本生活的确有着独特之处。他们讨论了国内的生活节奏和就医等方面的压力,以及个人选择的自由。最后,他们也谈到了不结婚不买房的选择和对于房价的困扰。鲍小螺: 该对话进一步讨论了房地产和税收的问题。保罗提到了国内的房地产税和增值税以及日本的固定资产税。广树解释了日本房地产税的收取方式,以及房产税对于国内房产的影响。他认为,与国内相比,日本的房子质量和服务更好。保罗提出疑问,为什么自己拥有的地也要交税。广树解释了类似增值税的原理,并指出在日本拥有房产是稳定安全的。最后,保罗表示从广树的角度来看,情况确实是如此。鲍小螺: 这篇文章的聊天记录也尝试过用 GPT 总结,结果并不是太好,不知道是不是 Prompt 的问题,实际出来的内容过于简练了,于是又耗费了半小时写完,呼~
奇趣音乐盒技术源于 Kico Player
Emmm,这里是歌词君