mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-07 00:39:00 +08:00
docs(docs): 统一中文文档导航与语义化链接文案
- 更新 docs 站点中 abstractions、source-generators、api-reference 的导航文案,使其与 landing page 入口一致 - 补充遗漏的源码生成器 sidebar 条目,并本地化抽象层与 API 参考的侧边栏标签 - 修复 ECS、Game、Godot 文档中的路径式可见链接标签,改为读者可理解的语义化名称
This commit is contained in:
parent
4ad880c1e3
commit
094e29ed8b
@ -117,9 +117,9 @@ export default defineConfig({
|
|||||||
items: [
|
items: [
|
||||||
{ text: 'ECS', link: '/zh-CN/ecs/' },
|
{ text: 'ECS', link: '/zh-CN/ecs/' },
|
||||||
{ text: '抽象接口', link: '/zh-CN/abstractions/' },
|
{ text: '抽象接口', link: '/zh-CN/abstractions/' },
|
||||||
{ text: '源码生成器', link: '/zh-CN/source-generators' },
|
{ text: '源码生成器', link: '/zh-CN/source-generators/' },
|
||||||
{ text: '最佳实践', link: '/zh-CN/best-practices/' },
|
{ text: '最佳实践', link: '/zh-CN/best-practices/' },
|
||||||
{ text: 'API 参考', link: '/zh-CN/api-reference' },
|
{ text: 'API 参考', link: '/zh-CN/api-reference/' },
|
||||||
{ text: '常见问题', link: '/zh-CN/faq' },
|
{ text: '常见问题', link: '/zh-CN/faq' },
|
||||||
{ text: '故障排查', link: '/zh-CN/troubleshooting' },
|
{ text: '故障排查', link: '/zh-CN/troubleshooting' },
|
||||||
{ text: '贡献指南', link: '/zh-CN/contributing' },
|
{ text: '贡献指南', link: '/zh-CN/contributing' },
|
||||||
@ -248,14 +248,18 @@ export default defineConfig({
|
|||||||
items: [
|
items: [
|
||||||
{ text: '概览', link: '/zh-CN/source-generators/' },
|
{ text: '概览', link: '/zh-CN/source-generators/' },
|
||||||
{ text: '日志生成器', link: '/zh-CN/source-generators/logging-generator' },
|
{ text: '日志生成器', link: '/zh-CN/source-generators/logging-generator' },
|
||||||
{ text: '枚举扩展', link: '/zh-CN/source-generators/enum-generator' },
|
{ text: '枚举生成器', link: '/zh-CN/source-generators/enum-generator' },
|
||||||
{ text: 'ContextAware 生成器', link: '/zh-CN/source-generators/context-aware-generator' },
|
{ text: 'ContextAware 生成器', link: '/zh-CN/source-generators/context-aware-generator' },
|
||||||
{ text: 'Priority 生成器', link: '/zh-CN/source-generators/priority-generator' },
|
{ text: 'Priority 生成器', link: '/zh-CN/source-generators/priority-generator' },
|
||||||
{ text: 'Context Get 注入', link: '/zh-CN/source-generators/context-get-generator' },
|
{ text: 'ContextGet 生成器', link: '/zh-CN/source-generators/context-get-generator' },
|
||||||
{ text: 'CQRS Handler Registry', link: '/zh-CN/source-generators/cqrs-handler-registry-generator' },
|
{ text: '模块自动注册生成器', link: '/zh-CN/source-generators/auto-register-module-generator' },
|
||||||
{ text: 'Godot 项目元数据', link: '/zh-CN/source-generators/godot-project-generator' },
|
{ text: 'CQRS Handler Registry 生成器', link: '/zh-CN/source-generators/cqrs-handler-registry-generator' },
|
||||||
|
{ text: 'Godot 项目生成器', link: '/zh-CN/source-generators/godot-project-generator' },
|
||||||
{ text: 'GetNode 生成器 (Godot)', link: '/zh-CN/source-generators/get-node-generator' },
|
{ text: 'GetNode 生成器 (Godot)', link: '/zh-CN/source-generators/get-node-generator' },
|
||||||
{ text: 'BindNodeSignal 生成器 (Godot)', link: '/zh-CN/source-generators/bind-node-signal-generator' }
|
{ text: 'BindNodeSignal 生成器 (Godot)', link: '/zh-CN/source-generators/bind-node-signal-generator' },
|
||||||
|
{ text: 'AutoUiPage 生成器', link: '/zh-CN/source-generators/auto-ui-page-generator' },
|
||||||
|
{ text: 'AutoScene 生成器', link: '/zh-CN/source-generators/auto-scene-generator' },
|
||||||
|
{ text: 'AutoRegisterExportedCollections 生成器', link: '/zh-CN/source-generators/auto-register-exported-collections-generator' }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@ -264,9 +268,25 @@ export default defineConfig({
|
|||||||
{
|
{
|
||||||
text: '抽象接口',
|
text: '抽象接口',
|
||||||
items: [
|
items: [
|
||||||
{ text: 'Core Abstractions', link: '/zh-CN/abstractions/core-abstractions' },
|
{ text: '概览', link: '/zh-CN/abstractions/' },
|
||||||
{ text: 'Game Abstractions', link: '/zh-CN/abstractions/game-abstractions' },
|
{ text: 'Core 抽象层说明', link: '/zh-CN/abstractions/core-abstractions' },
|
||||||
{ text: 'Ecs.Arch Abstractions', link: '/zh-CN/abstractions/ecs-arch-abstractions' }
|
{ text: 'Game 抽象层说明', link: '/zh-CN/abstractions/game-abstractions' },
|
||||||
|
{ text: 'Ecs.Arch 抽象层说明', link: '/zh-CN/abstractions/ecs-arch-abstractions' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
'/zh-CN/api-reference/': [
|
||||||
|
{
|
||||||
|
text: 'API 参考',
|
||||||
|
items: [
|
||||||
|
{ text: '概览', link: '/zh-CN/api-reference/' },
|
||||||
|
{ text: 'Core 栏目', link: '/zh-CN/core/' },
|
||||||
|
{ text: 'Game 模块总览', link: '/zh-CN/game/' },
|
||||||
|
{ text: 'Godot 模块总览', link: '/zh-CN/godot/' },
|
||||||
|
{ text: 'ECS 模块总览', link: '/zh-CN/ecs/' },
|
||||||
|
{ text: '抽象接口', link: '/zh-CN/abstractions/' },
|
||||||
|
{ text: '源码生成器', link: '/zh-CN/source-generators/' }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@ -18,7 +18,7 @@ description: GFramework.Ecs.Arch 的默认运行时装配路径、系统桥接
|
|||||||
- 使用仓库自带的 `Position`、`Velocity`、`MovementSystem` 最小示例
|
- 使用仓库自带的 `Position`、`Velocity`、`MovementSystem` 最小示例
|
||||||
|
|
||||||
如果你只想保留共享边界,而不依赖默认实现,请改看
|
如果你只想保留共享边界,而不依赖默认实现,请改看
|
||||||
[`../abstractions/ecs-arch-abstractions.md`](../abstractions/ecs-arch-abstractions.md)。
|
[ECS 抽象层说明](../abstractions/ecs-arch-abstractions.md)。
|
||||||
|
|
||||||
## 最小接入路径
|
## 最小接入路径
|
||||||
|
|
||||||
|
|||||||
@ -146,7 +146,7 @@ var restored = serializer.Deserialize(json, data.GetType());
|
|||||||
- `Game.SourceGenerators + YamlConfigLoader`
|
- `Game.SourceGenerators + YamlConfigLoader`
|
||||||
- 负责 schema 驱动的配置表生成与 YAML 读取
|
- 负责 schema 驱动的配置表生成与 YAML 读取
|
||||||
|
|
||||||
如果你的目标是静态内容配置表,而不是运行时持久化对象,请改看 [`config-system.md`](./config-system.md)。
|
如果你的目标是静态内容配置表,而不是运行时持久化对象,请改看 [配置系统](./config-system.md)。
|
||||||
|
|
||||||
## 当前边界
|
## 当前边界
|
||||||
|
|
||||||
|
|||||||
@ -195,7 +195,7 @@ await settingsModel.SaveAllAsync();
|
|||||||
|
|
||||||
- `SettingsModel<TRepository>` 负责数据生命周期,`SettingsSystem` 负责系统级调用入口;两者不要混成一个巨型服务
|
- `SettingsModel<TRepository>` 负责数据生命周期,`SettingsSystem` 负责系统级调用入口;两者不要混成一个巨型服务
|
||||||
- applicator 决定“怎么把数据应用到宿主”,repository 决定“怎么保存数据”,两层职责不要互相侵入
|
- applicator 决定“怎么把数据应用到宿主”,repository 决定“怎么保存数据”,两层职责不要互相侵入
|
||||||
- 设置迁移和存档迁移是两条不同管线;后者看 [`data.md`](./data.md) 里的 `SaveRepository<TSaveData>`
|
- 设置迁移和存档迁移是两条不同管线;后者看 [数据与存档系统](./data.md) 里的 `SaveRepository<TSaveData>`
|
||||||
|
|
||||||
## 继续阅读
|
## 继续阅读
|
||||||
|
|
||||||
|
|||||||
@ -161,8 +161,8 @@ var cacheStorage = new ScopedStorage(rootStorage, "runtime-cache");
|
|||||||
|
|
||||||
也就是说:
|
也就是说:
|
||||||
|
|
||||||
- 业务层如果想保存一份独立数据,优先看 [`data.md`](./data.md)
|
- 业务层如果想保存一份独立数据,优先看 [数据与存档系统](./data.md)
|
||||||
- 业务层如果想保存设置,优先看 [`setting.md`](./setting.md)
|
- 业务层如果想保存设置,优先看 [设置系统](./setting.md)
|
||||||
- 业务层如果只是需要底层存储实现,才直接依赖 `IStorage`
|
- 业务层如果只是需要底层存储实现,才直接依赖 `IStorage`
|
||||||
|
|
||||||
## 当前边界
|
## 当前边界
|
||||||
|
|||||||
@ -137,13 +137,13 @@ await settingsSystem.Apply<GodotAudioSettings>();
|
|||||||
### 先理解设置模型和仓库
|
### 先理解设置模型和仓库
|
||||||
|
|
||||||
如果你想先理解 `ISettingsData`、`IResetApplyAbleSettings`、`SettingsModel`、`SettingsSystem` 与设置迁移,先看
|
如果你想先理解 `ISettingsData`、`IResetApplyAbleSettings`、`SettingsModel`、`SettingsSystem` 与设置迁移,先看
|
||||||
[`../game/setting.md`](../game/setting.md)。
|
[Game 设置系统](../game/setting.md)。
|
||||||
|
|
||||||
### 先理解设置如何被持久化
|
### 先理解设置如何被持久化
|
||||||
|
|
||||||
如果你关注的是统一设置文件、备份、数据位置和底层存储实现,应该回到:
|
如果你关注的是统一设置文件、备份、数据位置和底层存储实现,应该回到:
|
||||||
|
|
||||||
- [`../game/storage.md`](../game/storage.md)
|
- [Game 存储系统](../game/storage.md)
|
||||||
- [Godot 存储系统](./storage.md)
|
- [Godot 存储系统](./storage.md)
|
||||||
|
|
||||||
本页只补 Godot 宿主如何“应用”设置,不重复维护一份完整设置系统手册。
|
本页只补 Godot 宿主如何“应用”设置,不重复维护一份完整设置系统手册。
|
||||||
|
|||||||
@ -108,7 +108,7 @@ architecture.RegisterUtility<ISaveRepository<GameSaveData>>(new SaveRepository<G
|
|||||||
### 配置 YAML / schema 文本加载
|
### 配置 YAML / schema 文本加载
|
||||||
|
|
||||||
如果你的目标是读取 `res://` 下的 YAML 配置,并在导出态同步到运行时缓存,请优先看
|
如果你的目标是读取 `res://` 下的 YAML 配置,并在导出态同步到运行时缓存,请优先看
|
||||||
[`../game/config-system.md`](../game/config-system.md) 里的 `GodotYamlConfigLoader` 接法。
|
[Game 配置系统](../game/config-system.md) 里的 `GodotYamlConfigLoader` 接法。
|
||||||
|
|
||||||
这类场景的重点不是通用键值存储,而是:
|
这类场景的重点不是通用键值存储,而是:
|
||||||
|
|
||||||
@ -119,7 +119,7 @@ architecture.RegisterUtility<ISaveRepository<GameSaveData>>(new SaveRepository<G
|
|||||||
### 通用存储契约
|
### 通用存储契约
|
||||||
|
|
||||||
如果你想先理解 `IStorage`、`ScopedStorage`、`FileStorage` 和统一数据仓库的宿主无关语义,应先看
|
如果你想先理解 `IStorage`、`ScopedStorage`、`FileStorage` 和统一数据仓库的宿主无关语义,应先看
|
||||||
[`../game/storage.md`](../game/storage.md)。
|
[Game 存储系统](../game/storage.md)。
|
||||||
|
|
||||||
本页只补 Godot 宿主差异,不重复维护一份跨宿主 API 手册。
|
本页只补 Godot 宿主差异,不重复维护一份跨宿主 API 手册。
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user