vue3+vite+联邦模块,需求场景

路由切换方式

文件结构

src/
├── views/
│ └── workbench/ # 工作台根目录
│ ├── index.vue # 工作台根布局(父路由组件,固定结构,包含moduels中的多个模块)
│ └── modules/ # 所有工作台子模块的布局/组件
│ └── dbiz/ # dbiz模块目录
│ ├── index.vue # dbiz模块布局(二级路由组件,含顶部搜索+内容区插槽,搜索得到的,远程的组件,但是要显示在content内容区插槽内)
└ ── chat/ # chat模块目录
│ ├── index.vue # dbiz模块布局(二级路由组件,含顶部搜索+内容区插槽,搜索得到的,远程的组件,但是要显示在content内容区插槽内)

└── router/
└── index.js # 路由配置(没有children路由嵌套,全是扁平结构)

workbench会在index里有四个区域在一行(客户信息区,dbiz区,chat区,会话列表区),多个会话列表,会渲染多个dbiz模块(只有当前会话的dbiz模块会显示,其余的隐藏),会渲染多个chat模块(只有当前会话的chat模块会显示,其余的隐藏),客户信息的话,无需缓存,就直接切换,获取当前会话列表的用户信息就好了。
每个dbiz模块,都有自己的头部和内容区。不要用插槽!!!

每个dbiz业务区,支持菜单搜索,进行业务跳转,路由都是/workbench/dbiz/xxxx.业务跳转的都是dbiz的内容区改变。

要怎么 把/workbench/dbiz/xxxx的路由内容,渲染到dbiz模块的内容区呢

路由不切换的方式

现在vue3+vite基于联邦模块,静态配置的主应用A,子应用B。
其中A想动态的加载B的组件。但是呢,B只暴露了路由给A。

但现在的情况是,B是静态的导出了180个组件,提供给A匹配。
理想的情况是,A想通过路由,动态的加载路由对应的组件,需要怎么做呢?

A的某个区域,有搜索,搜索匹配的是B的路由,此时,url要保持不变。但是呢,要把B路由对应的组件,渲染在区域里,需要怎么做。

posted @ 2026-01-27 17:30  风意不止  阅读(2)  评论(0)    收藏  举报