Skip to content

作品二:qiankun 微前端集成平台

在线体验

打开作品:qiankun 微前端(新标签页)

一、定位与价值

视角说明
组织多团队、多仓库、Vue / React 技术栈并存 时的门户整合
交付子应用 独立开发、独立部署,集成环境统一域名与登录态
演进老系统渐进迁移:先嵌微应用,再替换模块,降低大爆炸重写风险

对应仓库:projects/micro-project(宿主 + micro-vue + micro-react)。

二、架构透视

text
主应用(Vue 3 + qiankun)
  ├── 路由 / 菜单 / 全局状态 / 登录
  ├── 子应用 micro-vue(Vue 3 + Vite)
  └── 子应用 micro-react(React 19 + TDesign)

        Nginx 按路径挂载各子应用静态资源(/micro-project/...)

关键点:子应用 base / publicPath 必须与 线上 location 完全一致,否则刷新与子资源路径会 404

三、技术栈

层级选型
微前端框架qiankun(基于 single-spa)
宿主Vue 3、TypeScript、Vue Router
子应用Vue 3;React 19(演示 豆包式对话 打字机与流式 UI 占位)
构建pnpm workspace、Vite
集成环境Docker Compose + Nginx

四、能力与设计取舍

维度说明
隔离JS 沙箱 / 样式隔离策略随 qiankun 版本演进;仍建议 BEM、CSS Modules 降低污染
通信本仓库采用企业级 Bridge 契约(包 @micro-fe/bridge):宿主用 Pinia 持有真相源,子应用只依赖 MicroHostBridge(getSnapshot / subscribe / dispatch),不再通过 props 传递宿主 Pinia 实例。
性能子应用按需加载;预加载策略平衡首屏与带宽
演示页Vue 子应用内 流式对话 UIrequestAnimationFrame 节流输出、粘底滚动、可中断,便于替换为 SSE

五、运维与灰度

  • 子应用独立发版时,只需更新对应 静态目录版本资源指纹
  • 回滚时可单独切换子应用构建产物,宿主保持稳定。