diff --git a/openspec/changes/multi-tab-keep-alive/.openspec.yaml b/openspec/changes/archive/2026-10-11-multi-tab-keep-alive/.openspec.yaml similarity index 100% rename from openspec/changes/multi-tab-keep-alive/.openspec.yaml rename to openspec/changes/archive/2026-10-11-multi-tab-keep-alive/.openspec.yaml diff --git a/openspec/changes/multi-tab-keep-alive/design.md b/openspec/changes/archive/2026-10-11-multi-tab-keep-alive/design.md similarity index 100% rename from openspec/changes/multi-tab-keep-alive/design.md rename to openspec/changes/archive/2026-10-11-multi-tab-keep-alive/design.md diff --git a/openspec/changes/multi-tab-keep-alive/proposal.md b/openspec/changes/archive/2026-10-11-multi-tab-keep-alive/proposal.md similarity index 100% rename from openspec/changes/multi-tab-keep-alive/proposal.md rename to openspec/changes/archive/2026-10-11-multi-tab-keep-alive/proposal.md diff --git a/openspec/changes/multi-tab-keep-alive/specs/frontend/AD/layout/spec.md b/openspec/changes/archive/2026-10-11-multi-tab-keep-alive/specs/frontend/AD/layout/spec.md similarity index 100% rename from openspec/changes/multi-tab-keep-alive/specs/frontend/AD/layout/spec.md rename to openspec/changes/archive/2026-10-11-multi-tab-keep-alive/specs/frontend/AD/layout/spec.md diff --git a/openspec/changes/multi-tab-keep-alive/tasks.md b/openspec/changes/archive/2026-10-11-multi-tab-keep-alive/tasks.md similarity index 100% rename from openspec/changes/multi-tab-keep-alive/tasks.md rename to openspec/changes/archive/2026-10-11-multi-tab-keep-alive/tasks.md diff --git a/openspec/specs/frontend/AD/layout/spec.md b/openspec/specs/frontend/AD/layout/spec.md index 50b459c..b85f091 100644 --- a/openspec/specs/frontend/AD/layout/spec.md +++ b/openspec/specs/frontend/AD/layout/spec.md @@ -89,12 +89,24 @@ - **THEN** 面包屑显示当前菜单的层级路径 ### Requirement: 多页签 -系统 SHALL 支持多页签(tabs)视图:打开的页面保留为页签,可切换与关闭。 +系统 SHALL 支持多页签(tabs)视图:打开的页面保留为页签,可切换与关闭;切换页签时保留各页面的组件状态(keep-alive),关闭页签时销毁其状态。页面 SHALL 默认缓存,可通过路由 meta `keepAlive: false` 关闭缓存。 #### Scenario: 页签切换与关闭 - **WHEN** 用户打开多个菜单页面 - **THEN** 各页面以页签形式保留,可切换、可关闭 +#### Scenario: 切换页签保留状态 +- **WHEN** 用户在多个页签间切换 +- **THEN** 各页签页面的组件状态(滚动/筛选/表单)被保留,不因切换而重建 + +#### Scenario: 关闭页签销毁状态 +- **WHEN** 用户关闭某页签 +- **THEN** 该页面的组件状态被销毁,再次打开时重建 + +#### Scenario: 页面关闭缓存 +- **WHEN** 某页面声明路由 meta `keepAlive: false` +- **THEN** 该页面切换页签时不保留状态,每次进入重新构建 + ### Requirement: 顶栏全屏 系统 SHALL 在顶栏提供全屏切换按钮,进入/退出浏览器全屏。