qs_xinchun2026_h5/.codebuddy/plans/调整组件结构计划_26ff8952.md

111 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: 调整组件结构计划
overview: 将 SinglePageContainer 从 App.vue 迁移到 pages/index/index.vue并清理重复的商圈卡片内容
todos:
- id: backup-files
content: 备份 App.vue 和 pages/index/index.vue 文件
status: completed
- id: modify-index-page
content: 在 pages/index/index.vue 中引入并使用 SinglePageContainer 组件
status: completed
dependencies:
- backup-files
- id: clean-index-content
content: 清理 pages/index/index.vue 中的商圈卡片和功能入口等重复内容
status: completed
dependencies:
- modify-index-page
- id: modify-app-vue
content: 移除 App.vue 中的 SinglePageContainer 组件和相关导入
status: completed
dependencies:
- clean-index-content
- id: test-functionality
content: 测试滑动容器功能和商圈场景切换是否正常
status: completed
dependencies:
- modify-app-vue
- id: verify-global-style
content: 验证横屏提示等全局功能是否仍然有效
status: completed
dependencies:
- test-functionality
---
## 产品概述
调整 uniapp vue3 项目的组件结构,优化页面层级关系,消除重复内容。
## 核心功能
- 将 SinglePageContainer 组件从 App.vue 迁移到 pages/index/index.vue
- 清理 pages/index/index.vue 中重复的商圈卡片内容
- 确保应用整体结构和滑动体验保持一致
## 技术栈
- 框架uniapp + Vue 3
- 构建工具Vite
- 状态管理Pinia
- 路由uniapp 内置路由
## 架构设计
### 当前问题分析
1. **组件层级不合理**SinglePageContainer 在 App.vue 中,导致所有页面都包含滑动容器
2. **内容重复**pages/index/index.vue 包含商圈卡片,而 SinglePageContainer 内部也有商圈场景
3. **职责不清晰**:首页应该负责展示入口,而不是同时包含滑动逻辑
### 调整方案
将 SinglePageContainer 下放到 pages/index/index.vue使组件层级更加合理
- App.vue应用根组件只保留全局样式和横屏提示
- pages/index/index.vue首页使用 SinglePageContainer 提供滑动体验
- SinglePageContainer保持完整的商圈场景滑动逻辑
### 数据流
```mermaid
graph TD
App.vue -->|引入| pages/index/index.vue
pages/index/index.vue -->|引入| SinglePageContainer.vue
SinglePageContainer.vue -->|使用| 各商圈场景组件
SinglePageContainer.vue -->|调用| Store(状态管理)
```
## 实现细节
### 核心目录结构
```
project-root/
├── App.vue # 移除 SinglePageContainer保留全局配置
└── pages/
└── index/
└── index.vue # 使用 SinglePageContainer移除商圈卡片
```
### 关键修改点
**App.vue 修改**
- 移除 `import SinglePageContainer`
- 移除模板中的 `<SinglePageContainer />`
- 保留横屏提示和全局样式
**pages/index/index.vue 修改**
- 导入 `SinglePageContainer` 组件
- 在模板中使用 `<SinglePageContainer />`
- 移除原有的商圈卡片列表、功能入口等重复内容
- 保留必要的样式和逻辑
### 技术实现步骤
1. 备份现有文件,确保可以回滚
2. 修改 pages/index/index.vue替换内容为 SinglePageContainer
3. 修改 App.vue移除 SinglePageContainer 引用
4. 验证滑动功能和商圈场景是否正常
5. 测试横屏提示是否仍然有效