1
0

refactor: 迁移前端 antd 组件至 v6 规范 API,消除废弃用法

- 迁移静态 message 到 App.useApp() 模式,使 message 感知 ConfigProvider 上下文
- Button type/danger 迁移为 variant/color 新 API
- Space direction 迁移为 vertical 布尔属性
- Select.Option 子组件迁移为 options 属性
- AppLayout 硬编码颜色替换为 antd design token
- 优化 useThemeConfig:default/dark 改为静态导出,减少不必要的 hook 调用
- 同步更新 openspec 主规范文档
This commit is contained in:
2026-04-17 00:59:36 +08:00
parent 49818ed4d8
commit 6eeb38c15e
19 changed files with 121 additions and 96 deletions

View File

@@ -104,13 +104,14 @@
### Requirement: 提供设置页面
前端 SHALL 提供设置页面,使用卡片布局组织设置内容。
前端 SHALL 提供设置页面,使用卡片布局组织设置内容,所有布局组件 SHALL 遵循 antd v6 API 规范
#### Scenario: 主题卡片
- **WHEN** 用户访问设置页面
- **THEN** 前端 SHALL 显示主题设置卡片
- **THEN** 卡片内 SHALL 包含主题下拉栏和跟随系统开关
- **THEN** 卡片内布局 SHALL 使用 `Space``vertical` 布尔属性替代已废弃的 `direction` 属性
#### Scenario: 主题下拉栏
@@ -136,14 +137,15 @@
### Requirement: 侧边栏跟随应用主题
侧边栏 SHALL 根据 `effectiveThemeId` 动态切换亮色或暗色外观。
侧边栏 SHALL 根据 `effectiveThemeId` 动态切换亮色或暗色外观,使用 antd token 获取颜色值
#### Scenario: 亮色主题下的侧边栏
- **WHEN** `effectiveThemeId` 不为 `'dark'`
- **THEN** 侧边栏 Sider 背景 SHALL 为浅色(`#fff`
- **THEN** Logo 文字颜色 SHALL 为深色
- **THEN** 侧边栏 Sider 背景 SHALL 使用 antd token 的 `colorBgContainer` 而非硬编码颜色值
- **THEN** Logo 文字颜色 SHALL 使用 antd token 的 `colorText` 而非硬编码颜色值
- **THEN** Menu 组件 SHALL 使用 `theme="light"`
- **THEN** Header 背景和边框 SHALL 使用 antd token 获取颜色值
#### Scenario: 暗色主题下的侧边栏
@@ -167,6 +169,7 @@
- **WHEN** 应用初始化
- **THEN** 主题注册表 SHALL 包含 6 套主题的完整配置
- **THEN** 每套主题 SHALL 通过 `useConfig()` hook 返回 `ConfigProviderProps`
- **THEN** `useThemeConfig` SHALL 优化加载策略,避免不必要的主题初始化开销
#### Scenario: 主题文件组织