liyanbo 2 hours ago
parent
commit
9161f2db76
1 changed files with 60 additions and 1 deletions
  1. 60 1
      README.md

+ 60 - 1
README.md

@@ -107,4 +107,63 @@
   - `api/` - API接口和工具函数
   - `router/` - 路由配置
   - `utils/` - 工具函数
-  - `assets/` - 静态资源
+  - `assets/` - 静态资源
+
+### AI对话引擎组件结构
+
+`src/components/aiCourse/` 目录包含AI对话课程的核心引擎组件:
+
+```
+aiCourse/
+├── DialogEngine.vue        # 核心引擎组件:管理对话流程、音频播放、状态控制
+├── engine/                 # 引擎基础组件
+│   ├── DialogBackground.vue   # 背景层(图片/视频)
+│   ├── DialogHeader.vue       # 标题栏(返回/播放控制)
+│   ├── DialogMask.vue         # 初始遮罩层(播放按钮)
+│   └── InputButtons.vue       # 底部控制按钮(上一句/语音输入/下一句)
+├── common/                 # 通用组件
+│   ├── DialogCharacter.vue    # 数字人形象组件
+│   └── DialogBubble.vue       # 对话气泡组件(支持Markdown)
+└── dialog/                 # 对话类型组件
+    ├── DialogCard.vue         # 统一对话卡片容器(类型分发)
+    └── dialogType/           # 具体对话类型
+        ├── DigitalDialogue.vue    # 普通对话
+        ├── QuestDialogue.vue      # 提问对话
+        ├── UserDialogue.vue       # 用户输入组件
+        ├── PoemDisplay.vue        # 诗词展示(卷轴样式)
+        ├── VideoDisplay.vue       # 视频播放组件
+        └── questType/             # 问题类型组件
+            ├── UserInputCard.vue     # AI Q&A文本输入
+            └── SingleChoiceCard.vue  # 单选问题卡片
+```
+
+#### 组件职责说明
+
+| 层级 | 组件 | 职责 |
+|------|------|------|
+| 核心 | DialogEngine | 对话流程控制、音频管理、状态管理 |
+| 引擎 | DialogBackground | 背景渲染(图片/视频切换) |
+| 引擎 | DialogHeader | 标题显示、返回、播放控制 |
+| 引擎 | DialogMask | 初始遮挡、播放按钮 |
+| 引擎 | InputButtons | 底部导航控制 |
+| 通用 | DialogCharacter | 数字人形象渲染 |
+| 通用 | DialogBubble | 对话内容展示 |
+| 容器 | DialogCard | 对话类型分发渲染 |
+| 对话 | DigitalDialogue | 数字人普通对话 |
+| 对话 | QuestDialogue | 数字人提问对话 |
+| 对话 | UserDialogue | 用户输入交互 |
+| 对话 | PoemDisplay | 诗词卷轴展示 |
+| 对话 | VideoDisplay | 视频内容播放 |
+| 问题 | UserInputCard | 文本问答输入 |
+| 问题 | SingleChoiceCard | 单选问题选择 |
+
+#### z-index 层级管理
+
+| 层级 | 组件 | z-index |
+|------|------|---------|
+| 背景层 | DialogBackground | 1 |
+| 对话内容 | DialogCharacter/DialogBubble | 1-2 |
+| 诗词展示 | PoemDisplay | 12 |
+| 视频播放 | VideoDisplay | 15 |
+| 标题栏 | DialogHeader | 20 |
+| 遮罩层 | DialogMask | 20 |