Files
digital-me-history/digital-me-web/docs/ROUTE-FLOW-YUANQI-TO-ZHAOMING.md
T
admin 0593ff7e62
nginx serve /uploads direct (audio speed) / patch-nginx (push) Failing after 1m34s
数字我 Digital Me:全量入库(大文件走 Git LFS)
2026-10-10 16:24:43 +08:00

7.8 KiB
Raw Blame History

缘起到照命:前端路由流程

更新时间:2026-08-28
范围:完整项目入口、第一章「缘起」、第二章「铸身」、第三章「照命」
权威配置:src/router.ts

这三个新页面不是独立项目,也没有另起一套路由;它们直接接替 digitme.cn 原项目中缘起、铸身、照命的正式位置。

1. 当前主流程

打开完整项目
  /
  │
  └─ 六章总入口
       │
       └─ 进入第一章
          /menmian?start=1
       第一章 · 缘起
            │
            ├─ 选择主业、第二擅长、性情
            ├─ 推演历朝结果
            └─ 继续这一生 · 把我铸完整
                 /shishi/zhushen
                 第二章 · 铸身
                      │
                      ├─ 本事
                      ├─ 性情
                      ├─ 分量
                      ├─ 来处
                      └─ 持此身,进入照命
                           ├─ 游客:/shishi/zhaoming
                           └─ 已登录分身:/twin/:id/verdict
                                第三章 · 照命

2. 路由总表

阶段 地址 路由名 页面组件 说明
完整项目首页 / shishi src/views/ShishiHome.vue 六章总入口,不被本分支替换
缘起 /menmian menmian src/views/Menmian.vue 第一章正文;加 ?start=1 时先显示无字卷序幕
旧六章目录地址 /shishi 无 无 兼容地址,重定向到 /
铸身 /shishi/zhushen shishi-zhushen src/views/shishi/Zhushen.vue 第二章;游客和登录用户共用
游客照命 /shishi/zhaoming/:dynasty? zhaoming-guest src/views/Verdict.vue 第三章;无分身也可进入
分身照命 /twin/:id/verdict/:dynasty? verdict src/views/Verdict.vue 登录分身使用,带分身 ID

3. 完整项目首页与分支入口

地址

/

当前行为

根地址继续渲染完整项目原有的六章总入口:

/

我们的新流程不占用根地址。从总入口选择第一章「缘起」后才进入:

/menmian?start=1

旧六章目录地址继续兼容:

/shishi  →  /

4. 第一章:缘起

标准入口

/menmian?start=1

可用查询参数

参数 示例 作用
start ?start=1 先显示无字卷序幕;用户点击后进入缘起正文
q ?q=医生 预填当前职业,并尝试映射职业签

可以组合:

/menmian?start=1&q=医生

页面内流程

  1. 进入无字卷序幕。
  2. 点击继续,隐藏序幕并回到缘起正文顶部。
  3. 选择主业。
  4. 可补充第二擅长和性情。
  5. 点击推演,生成历朝身份对照。
  6. 推演成功后调用 shishi.markYuanqi(),标记缘起已阅。
  7. 把以下草稿写入本机 localStorage:
key: yuanqi_draft

profId           主业 ID
profName         主业名称
portraitDynasty  缘起题像朝代
chipTalents      第二擅长
chipTraits       性情
  1. 点击“继续这一生 · 把我铸完整”进入:
/shishi/zhushen

顶部导航

一 · 缘起    当前页
二 · 铸身    /shishi/zhushen
三 · 照命    /shishi/zhaoming
四 · 入局    /shishi/ruju
六 · 传世    /shishi/chuanshi

5. 第二章:铸身

地址

/shishi/zhushen

数据承接

铸身页会读取缘起写下的 yuanqi_draft,用于回显或补齐:

  • 主业
  • 第二擅长
  • 性情
  • 缘起题像朝代

游客铸身的稳定本地状态写入:

key: shishi.guest.zhushen

页面内四步

1 · 本事
2 · 性情
3 · 分量
4 · 来处

四步完成后合炉定身,显示人物名帖。

进入照命的分支

铸身页根据是否存在当前分身 ID 生成不同目标地址。

游客

/shishi/zhaoming

已登录且有分身

/twin/:id/verdict

例如:

/twin/abc123/verdict

顶部导航

一 · 缘起    /menmian?start=1
二 · 铸身    当前页
三 · 照命    /shishi/zhaoming
四 · 入局    /shishi/ruju
六 · 传世    /shishi/chuanshi

6. 第三章:照命

照命的游客版和分身版都复用:

src/views/Verdict.vue

游客地址

/shishi/zhaoming

可选 path 参数:

/shishi/zhaoming/:dynasty?

例如:

/shishi/zhaoming/nanchao

分身地址

/twin/:id/verdict

可选朝代 path 参数:

/twin/:id/verdict/:dynasty?

例如:

/twin/abc123/verdict/nanchao

正式朝代参数

朝代沿用原项目的 path 参数:

/shishi/zhaoming/:dynasty?
/twin/:id/verdict/:dynasty?

例如:

/shishi/zhaoming/nanchao
/twin/abc123/verdict/nanchao

命盘连续切换朝代时使用 router.replace() 更新 path 参数:

  • 保留原项目可复制、可回退的正式地址
  • App.vue 对同一游客照命或同一分身照命使用稳定 RouterView key,不重新挂载整个页面
  • 不制造大量浏览器历史记录
  • router.ts 对同一照命页的朝代切换保持滚动位置

此前短暂生成过的 ?dyn=朝代ID 链接只作为兼容入口;页面打开后会自动归一到正式 path,不再继续生成 query 形式的新链接。

其他查询参数

照命页会保留并向后传递现有 query,例如:

参数 作用
tier 当前位阶
twin 当前分身 ID
chushen 选定的出身分支

从照命返回

返回缘起:/menmian?start=1
返回铸身:/shishi/zhushen

从照命继续

游客点击“展开这朝命局”后,进入入局流程:

/ruju/:code/:year?tier=...&dyn=...

登录分身点击后,先创建或续接一部传,再进入:

/twin/:id/lineage/:lid

如果创建时已经直接成传,则进入:

/twin/:id/zhuan/:lid

7. 游客与登录分身的区别

环节 游客 登录分身
缘起 /menmian?start=1 /menmian?start=1
铸身 /shishi/zhushen /shishi/zhushen
铸身数据 localStorage 分身数据与接口
照命 /shishi/zhaoming /twin/:id/verdict
照命计算 游客铸身预览数据 当前分身画像
展开命局 进入游客入局 创建或续接一部传

8. 推荐验收地址

# 完整项目首页,应该显示六章总入口
http://127.0.0.1:5173/

# 我们分支的正式起点:缘起无字卷序幕
http://127.0.0.1:5173/menmian?start=1

# 带职业预填的缘起入口
http://127.0.0.1:5173/menmian?start=1&q=医生

# 铸身
http://127.0.0.1:5173/shishi/zhushen

# 照命
http://127.0.0.1:5173/shishi/zhaoming

# 指定朝代的照命
http://127.0.0.1:5173/shishi/zhaoming/nanchao

# 旧六章目录兼容地址,应该回到完整项目首页
http://127.0.0.1:5173/shishi

9. 相关代码

src/router.ts
src/views/Menmian.vue
src/views/shishi/Zhushen.vue
src/views/Verdict.vue
src/components/shishi/ZhushenForgeBoard.vue
src/components/shishi/ZhaomingWheelBoard.vue
src/lib/shishi.ts

10. 路由修改原则

后续调整这段流程时应保持:

  1. / 始终保留完整项目的六章总入口,不能被本分支覆盖。
  2. /menmian?start=1 始终是「缘起 → 铸身 → 照命」分支的正式起点。
  3. /shishi 作为旧目录兼容地址回到 /。
  4. 游客照命继续使用 /shishi/zhaoming。
  5. 分身照命继续使用 /twin/:id/verdict。
  6. 朝代始终使用 /:dynasty path;通过稳定 RouterView key 避免同一照命页重挂。
  7. 缘起写入的 yuanqi_draft 必须继续被铸身读取。
  8. 铸身到照命必须保留游客和登录分身两条分支。