前言
YseraMicroServer 是基于qiankun的微前端平台化解决方案。他基于qiankun的沙箱能力、重新定义的通信机制和接入方式以及ui快照等能力,提供一种微前端快速接入的解决方案。本文将从业务背景、实现思路、运行机制等方面进行阐述。
背景
在业务中,我们会遇到2种情况: 第一种是要把多个平台整合成一个入口,由于前期平台能力的拆分,或则团队的不同,完整链路上的能力被拆分在不同的平台中,这对于运营来说是低效(需要切换不同的平台),而整合成一个入口,可以有效的降低平台切换的成本;第二种是要将平台在技术层面形成拆解,从而降低代码的复杂度,在新需求中也能落地较新的技术。
以上2中情况,其实都在做一件事,那就是‘看(用)起来是一个平台’。‘微前端’就是为解决这个问题。
‘qiankun’是业界比较成熟的方案,因此我们整个方案还是建立在qiankun 的基础上,并结合我们的技术业务场景,衍生出YseraMicroServer。
实现方式
业务中微前端接入的项目运行已久,每个项目的负责人也不同,那如何降低项目接入成本,减少项目代码的侵入性是我们考虑的核心目标。
在方案设计思路上:1是保证渲染框架够简单,这里的简单指的是他只做1件事那就是子应用渲染;2是主子应用的通信标准化, 降低开发者的学习成本;3是将接入方式平台化进一步降低微前端应用的研发成本。
由此 整体的微前端应用研发方案如下: