文章目录
=============================================================
这篇文章本来写于一年前,今天突然有人加我问起RuoYi-Vue3-qiankun库如何实现的,我瞬间失忆了,一年前的代码不知道怎么写的了。
所以写下这篇用来以后回忆。
在 vue3+ts+element-plus 的基础上,实践了一下,将RuoYI前后端分离版本前端重写了一下,产生了RuoYi-Vue3 开源版本。
但是这个版本并不能更好的满足公司技术需求,在RuoYi-Vue3的基础上 加入了qiankun ,改成了微前端的版本。
RuoYi-Vue3仓库地址:github.com/RainManGO/R…
RuoYi-Vue3-qiankun仓库地址:
最初的设计是这样的:
-
主应用:负责注册加载子应用,不负责侧边栏菜单路由,子应用组织好路由,提供给主应用加载。
-
子应用: 自己加载后端路由,然后通信主应用渲染上
但是这样做,我没法控制所有的子应用都加载完,主应用再渲染,也不利于统一管理后端路由。
最终设计
更改了思路,采用主应用加载菜单数据。主应用没有子应用组件和路由只是通过url 调用。
这里贴图,具体找到仓库代码查看。
JavaScript 和 ES6
在这个过程你会发现,有很多 JS 知识点你并不能更好的理解为什么这么设计,以及这样设计的好处是什么,这就逼着让你去学习这单个知识点的来龙去脉,去哪学?第一,书籍,我知道你不喜欢看,我最近通过刷大厂面试题整理了一份前端核心知识笔记,比较书籍更精简,一句废话都没有,这份笔记也让我通过跳槽从8k涨成20k。