2.1 KiB
2.1 KiB
name, applyTo, description
| name | applyTo | description |
|---|---|---|
| frontend-migration | frontendNew/src/pages/Dcalc/Character/**/*.vue,frontendNew/src/stores/**/*.ts,frontendNew/src/api/**/*.ts | Use when migrating frontend Character pages to frontendNew, preserving config->execute->save flow, keeping /calc and IResult contract stable, and implementing same-page config+result with minimal behavior changes for Skill/Forge. |
Frontend Migration Rules (frontend -> frontendNew)
Core Target
- 迁移目标是行为保真,不是推倒重做。
- 结果必须保持:配置变化可触发计算,结果区稳定刷新,配置可持久化。
Required Data Flow
- 保持以下链路成立:
- config mutate
- Character 容器 watch config
result.execute()saveConfig()
- 不在 Skill/Forge 子页直接做并发调度或替代容器级触发策略。
API/Type Contract
- 不修改
/calc入参与返回结构。 - 不破坏
IResult的关键字段语义:skills、info、suits、buffer。
Skill/Forge Migration Constraints
- Skill、Forge 优先沿用现有业务逻辑与限制条件(例如 VP/UP 数量限制、等级限制)。
- 允许替换 UI 结构与组件,但不改核心规则语义。
- 新行为必须可追踪到
pushChangeSource,便于结果回溯。
Result Panel Requirements
- 必须具备 4 态:loading、error、empty、success。
- 同页可查看结果,不依赖跳页。
- 允许以 Tab 汇总展示(如详情/结果切换),但不得导致计算链路断开。
Source of Truth
- 迁移策略以以下文件为准:
Existing Pattern to Reuse
- 优先参考已迁移页面模式: