我是如何将中台项目升级到最新的 webpack 5 与 antd 5

340 阅读1分钟

项目背景:

  • 公司自成立以来一直开发的一套中台系统,距今好像有7年了

项目介绍

  • Webpack 3
  • ReactRouter 3
  • Antd 2.13.14
  • Babel 6

升级过程

  • 升级 Babel,官方有个自动升级工具 babel-upgrade
  • 升级 Webpack,这里必须说一句,真的是 YYDS,原先冷启动一次 120 秒(8核32G内存的MBP),热更新一次 10 秒左右,升级之后,速度直接起飞,冷启动第一次 40 秒,带缓存启动 10 秒,热更新 0.8
  • 升级 Antd,这里的话本来是想重新编译 Antd 项目改前缀,以保证两套同时运行,但是问了下核心开发人员,他们也不知道要咋跑起来了,所以直接从 node_modules 复制了出来,然后全局批量替换 less、js 里面的前缀
  • 还顺带把 Typescript、Postcss、Tailwindcss 都支持了下
  • React-Router 升级比较麻烦,正在考虑如何升

最后

  • 花了大概 3 天时间去做这个升级改造
  • 其实从 19 年开始就准备做这个升级,项目太多前人留下的坑,陆陆续续的修