什么是微前端
微前端是一种类似于微服务的架构,它将微服务的理念应用于浏览器端,即将 Web 应用由单一的单体应用转变为多个小型前端应用聚合为一的应用。各个前端应用可以独立运行、独立开发、独立部署。
iframe集成应用
页面加载问题: 影响主页面加载,阻塞onload事件,本身加载也很慢,页面缓存过多会导致电脑卡顿。
主应用刷新,⼦应⽤会丢失状态
布局问题:iframe必须给一个指定的高度,否则会塌陷。解决办法:子系统实时计算高度并通过 postMessage发送给主页面,主页面动态设置高度,修改子系统或者代理插入脚本。有些情况会出现多个滚动条,用户体验不佳。
什么情况下适用微前端
公司管理后台业务菜单越来越多,且功能越来越重
业务模块功能各自独立,且各自团队维护
项目生命周期长,代码量庞大
主应用每次编译、打包随体积增大越来越慢