89 - 《Bigfish 4 特性 01:MFSU V3》
发布于 2022年3月31日
这个系列是写在内网的,适合对外的内容会同步到这。
4 月预计会更新 20 篇 Bigfish 4(含 Umi 4)的新特性,共计 20 篇,这是第一篇。
Bigfish 3 的 MFSU 大家多少都有接触过,虽然有用,但 DX 不够好。用的时候会遇到一些坑,以至于很多同学都掌握了一项特殊技能,遇到问题时 rm -rf src/.umi。除此之外,大家遇到的问题可能还有,
1、如果用 monorepo 组织项目,mfsu 是不支持的
2、特殊场景的热更新问题,可能会导致 Tab 卡死
3、虽然二次打开快(因为有缓存),但首次还是慢
4、启动虽然快了,但大项目的页面打开反而慢了,因为请求多
5、样式的优先级问题,比如 antdpro 或自定义的样式如果比 antd 早加载就会失效
6、不支持 export * from
语法,只能用具名的 reexport,比如 export { foo } from
7、不支持 require 语法,只能用 import 或 import()
8、没有 export 信息的文件会自动加上 export const __mfsu = 1
9、…
以上问题,在 Bigfish 4 的 MFSU V3 中全解了!再也没有各种奇奇怪怪的问题,也不用手动 rm -rf src/.umi 了!基于此,我们非常有信心地在 Umi 4 和 Bigfish 4 中默认开启 MFSU 功能。当然,你也可以手动配置 mfsu: false 关闭。
为啥不再需要手动 rm -rf src/.umi ?因为 MFSU V3 内置了 module graph,会收集所有项目五文件的依赖关系