WholeProcessPlatform/.trae/specs/implement-wujie-microfrontend-demo/spec.md

61 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Wujie 微前端双栈并存接入 Spec
## Why
现有系统前端Element Plus已稳定具备登录、菜单与权限管理能力但后续业务模块计划采用 Ant Design Vue。需要通过微前端方式实现双栈并存避免一次性迁移带来的回归风险并支持业务模块按菜单集成展示。
## What Changes
- 明确采用 Wujie 作为微前端方案Host=Element PlusSubApp=Ant Design Vue
- 新增 `frontend-process` 子应用:提供 `AntD Demo` 页面与 `manifest.json`(路由、权限码、入口信息)。
-`front-system`(当前仓库 `frontend`)集成 Wujie新增一个 Host 页面(`/process/antd-demo`)用于挂载子应用。
- Host 开发代理:本地将 `/process/**` 代理到子应用 dev server实现“同域路径”联调。
- **BREAKING**:无(仅新增能力与页面)。
## Impact
- Affected specs:
- 微前端集成Host + SubApp
- 路由与菜单展示
- 本地联调与部署路径约定(同域 `/process/`
- Affected code:
- Host`frontend/src/main.ts`、`frontend/src/router/index.ts`、`frontend/vite.config.ts`、新增 `frontend/src/views/process/antd-demo.vue`
- SubApp新增 `frontend-process/**`
- 文档基线:`系统前端框架及集成方案.md`(不在本变更中修改其内容,仅作为实现依据)
## ADDED Requirements
### Requirement: Wujie Host 集成
系统 SHALL 在 Hostfront-system中集成 Wujie并提供可通过路由访问的挂载页面用于展示 `front-process` 子应用内容。
#### Scenario: 打开 AntD Demo开发态
- **GIVEN** Host 与 SubApp 均在本地启动
- **WHEN** 用户在 Host 中访问 `/process/antd-demo`
- **THEN** Host 页面中出现 Wujie 容器并成功加载子应用入口 `/process/`
- **AND** 子应用展示 Ant Design Vue 组件示例(按钮、表格等)
### Requirement: 子应用 Demo 页面
系统 SHALL 提供 `frontend-process` 子应用,并包含一个可访问的 Demo 页面(`/process/antd-demo`)用于验证 Ant Design Vue 在微前端容器中正常渲染。
#### Scenario: 子应用独立运行(开发态)
- **WHEN** 直接访问 `http://localhost:5174/process/antd-demo`(或等价本地地址)
- **THEN** 能看到 “Ant Design Vue Demofront-process” 标题与示例组件
### Requirement: 本地同域联调代理
系统 SHALL 在 Host Vite dev server 中提供 `/process/**` 的代理转发到子应用 dev server以实现同域路径加载。
#### Scenario: Host 以同域路径加载子应用
- **WHEN** Host 页面请求 `/process/` 及其静态资源
- **THEN** 请求被代理到子应用 dev server端口 5174
### Requirement: 菜单可集成展示Demo 级别)
系统 SHALL 使 Demo 页面可在 Host 菜单体系中被访问(可先以静态路由方式呈现,后续再与后端动态菜单配置联动)。
#### Scenario: 菜单访问
- **WHEN** 用户在 Host 菜单点击“AntD Demo”
- **THEN** 跳转到 `/process/antd-demo` 并展示子应用内容
## MODIFIED Requirements
无。
## REMOVED Requirements
无。