qiankun icon indicating copy to clipboard operation
qiankun copied to clipboard

咨询一下 如何预加载一个性能很差的子应用

Open iRockyZhou opened this issue 1 year ago • 2 comments

背景

我接手了一个基于qiankun开发的微前端管理后台应用,当它在子应用间切换时,非常卡顿(网页无法交互五六秒那种),我现在想对它做性能优化。 现在分析了卡顿是由于使用了性能较差的UI组件库,使用了 React v16 和 一些上古代码导致 受限于项目周期和人力缺口,我无法优化已经使用的 UI 组件库 和 上古代码,也无法升级 React,但是我还想优化性能:) 现在想到的手段是提前下载并在后台启动子应用,但在 UI 线程里去做这个『提前下载并在后台启动子应用』会让当前页面的子应用 UI 线程被阻塞个五六秒。

目标

想请教一下,有什么办法能让我在 web worker 里『提前下载并在启动子应用』吗?然后在需要渲染(mount)子应用时,就把它渲染(mount)出来? 或者,有什么类似的先例吗?是怎么实现性能优化的?

感谢

iRockyZhou avatar Mar 15 '23 16:03 iRockyZhou

https://qiankun.umijs.org/zh/api#prefetchappsapps-importentryopts 手动加载时可以自定义预加载

image

gongshun avatar Mar 16 '23 09:03 gongshun

same here

rorry121 avatar Mar 04 '24 16:03 rorry121