拆分后 主应用负责登陆/菜单展示等基础功能;子应用负责展示模块内的页面。
问题:当模块内需要增加菜单时,需要在主/子应用内 都增加相同菜单配置。
(主应用里的 用于展示在菜单栏,子应用里的 用于注册这个菜单路由。)
感觉这样操作很繁琐。
在多人协同开发时,主应用中的改动还容易冲突。
诉求:
[ol]
(因为子应用很多,如果是通过修改子应用实现的话,改动很大且重复
[/ol]
当前想法:
将后台系统的菜单结构缓存在浏览器中,在进入子应用时 更新菜单结构;
主应用利用缓存中的菜单结构进行菜单栏展示;
若浏览器缓存中无菜单结构,则使用主应用代码中的菜单结构展示,并缓存。
当前遇到的问题:
无法 “在进入子应用时 更新菜单结构” 。
因为在进入子应用时,只能根据子应用的地址 获取出子应用的 html ,app.js 等打包后的代码。
app.js 中的代码经过了混淆处理 无法解析出子应用的 router 。
额外信息:
前端框架 vue2 ,子应用的 gitlab-ci 是直接使用的公共模版 所有的子应用的 ci/cd 流程一次修改 多处生效,
子应用数量大约有十几个, 不用考虑浏览器兼容 最新的 chrome 能实现即可。