feat: 完成分龄页开发
This commit is contained in:
+17
-36
@@ -368,41 +368,18 @@ type CategoryPageData = {
|
||||
|
||||
## 五、分龄页内容管理
|
||||
|
||||
### 5.1 新增 `age.config.ts`
|
||||
> 详细方案已独立为 [分龄页内容管理方案](./分龄页内容管理方案.md)
|
||||
|
||||
在 `miniprogram/pages/age/` 下新增 `age.config.ts`,将年龄段划分、能力目标、默认 worksheet 写死在配置中,作为兜底数据和管理页的基础结构。
|
||||
分龄页内容分为四部分,通过 `age.config.ts` 统一管理:
|
||||
|
||||
```ts
|
||||
export type AgeBandConfig = {
|
||||
key: AgeBandKey;
|
||||
label: string;
|
||||
subLabel: string;
|
||||
abilities: AbilityItem[];
|
||||
weeks: WeekPlan[];
|
||||
};
|
||||
```
|
||||
| 部分 | 名称 | 管理方式 |
|
||||
| --- | --- | --- |
|
||||
| 第一部分 | 年龄段设置 | 写死在 `age.config.ts`,几乎不变 |
|
||||
| 第二部分 | 能力目标 | AI Skill `generate-age-abilities` 生成 |
|
||||
| 第三部分 | 4 周学习路线 | AI Skill `generate-age-weekly-plans` 生成 |
|
||||
| 第四部分 | 为你推荐 | 运行时动态计算(取收藏/下载最高的 6 个 worksheet) |
|
||||
|
||||
> `worksheetIds` 初始为空数组,由分龄管理页选择后填入。`worksheetTitles` 作为兜底展示。
|
||||
|
||||
### 5.2 管理 UI
|
||||
|
||||
分龄管理按年龄段切换:`3-4 岁 | 4-5 岁 | 5-6 岁 | 6-7 岁 | 7-8 岁`
|
||||
|
||||
| 模块 | 操作 | 说明 |
|
||||
| ---- | ------------ | -------------------------------- |
|
||||
| 能力目标 | 只读展示 | 来自 `age.config.ts`,不需要在管理页修改 |
|
||||
| 四周路线 | 选择 worksheet | 每周选择 4 个 worksheet,主题来自 config |
|
||||
| 推荐内容 | 选择 worksheet | 动态数据,展示 likes 数量最高的 6 个worksheet |
|
||||
|
||||
### 5.3 更新流程
|
||||
|
||||
```
|
||||
分龄管理 → 选择年龄段 → 为每周选择 worksheet → 选择推荐内容
|
||||
→ 点击「更新分龄数据」
|
||||
→ 合并 age.config.ts 的能力目标 + 管理页选择的 worksheet 详情
|
||||
→ 调用 pageContentBuild({ page: 'age', data: ... })
|
||||
→ 云函数更新 page_configs/current 中的 age 字段 + 同步云存储
|
||||
```
|
||||
AI Skill 位于 `skills/` 目录,在开发时通过 Cursor 运行,以早教专家视角结合最新 worksheet 数据生成内容。
|
||||
|
||||
---
|
||||
|
||||
@@ -443,9 +420,11 @@ supportPages/debug/debug
|
||||
|
||||
### Phase 4:分龄页管理(待开发)
|
||||
|
||||
1. 新增 `age.config.ts` 配置文件
|
||||
2. 实现分龄管理页(年龄段切换、周 worksheet 选择)
|
||||
3. 实现「更新分龄数据」→ 合并 config + worksheet 详情
|
||||
> 详见 [分龄页内容管理方案](./分龄页内容管理方案.md)
|
||||
|
||||
1. 新增 `age.config.ts` 配置文件,将静态配置与 AI 生成数据分离
|
||||
2. 开发 AI Skill(`generate-age-abilities` + `generate-age-weekly-plans`)
|
||||
3. 分龄页接入 pageConfig 数据源,实现「为你推荐」动态计算
|
||||
|
||||
---
|
||||
|
||||
@@ -475,7 +454,9 @@ supportPages/debug/debug
|
||||
| `cloudfunctions/worksheetsQuery/` | 查询 worksheet 列表 |
|
||||
| `cloudfunctions/worksheetsUpdateStatus/` | 更新 worksheet 状态 |
|
||||
| `pages/category/category.ts` | 分类页,支持 `?id=xxx` 参数选中分类 |
|
||||
| `pages/age/age.config.ts` | 分龄页兜底配置 |
|
||||
| `pages/age/age.config.ts` | 分龄页配置(详见 [分龄页方案](./分龄页内容管理方案.md)) |
|
||||
| `skills/generate-age-abilities/SKILL.md` | AI Skill:生成分龄页能力目标 |
|
||||
| `skills/generate-age-weekly-plans/SKILL.md` | AI Skill:生成分龄页学习路线 |
|
||||
| `pages/home/home.data.ts` | 首页兜底数据 |
|
||||
| `pages/category/category.data.ts` | 分类页兜底数据 |
|
||||
| `core/data/categories.ts` | CATEGORY_LIST 分类定义(id/name/icon/path) |
|
||||
|
||||
Reference in New Issue
Block a user