# 任务 6 实现报告 — 单接口页面(批次 A · 9 个)
**基准提交:** 7b4c3eea
**完成时间:** 2026-08-06
**任务说明:** 为 9 个组件/页面添加 `v-if="hasFamily"` 包裹家庭数据区,无家庭时渲染 ``
---
## 改造文件清单
| # | 文件 | 接口 | type | 改动行数 |
|---|---|---|---|---|
| 1 | `components/DimensionProducts.vue` | getDimensionProducts | card | 已在任务 4 完成 |
| 2 | `components/FamilyMemberStrip.vue` | getPendingFamilyRequests | card | +8 |
| 3 | `pages/action-detail/interaction-log.vue` | addInteraction | card | +11 |
| 4 | `pages/action-detail/member-action-detail.vue` | getEnergyOverview | card | +8 |
| 5 | `pages/assessment/purchase.vue` | createAssessmentOrder | card | +11 |
| 6 | `pages/body-detail/member-body-detail.vue` | getEnergyOverview | card | +8 |
| 7 | `pages/body/index.vue` | getEnergyOverview | card | +8 |
| 8 | `pages/body/member-body-detail.vue` | getEnergyOverview | card | +8 |
| 9 | `pages/energy/detail.vue` | getEnergyLogs | list | +10 |
---
## 每个文件的改动详情
### 1. `components/DimensionProducts.vue`
- **状态:** 已在任务 4 完成
- **改动:** 包裹产品数据区 `` + ``
- **grep 验证:** `FamilyEmptyState` 出现 1 次,`hasFamily` 出现 3 次
### 2. `components/FamilyMemberStrip.vue`
- **改动:**
- 将外层 `v-if="(members && members.length > 0) || isAdmin"` 替换为 `v-if="hasFamily"`
- 在 `computed` 中添加 `hasFamily` 计算属性
- 在模板末尾添加 ``
- **保留不动:** showModal 同意/拒绝加入申请的业务逻辑(approveRequest/rejectRequest)
- **grep 验证:** `FamilyEmptyState` 出现 1 次,`hasFamily` 出现 3 次
### 3. `pages/action-detail/interaction-log.vue`
- **改动:**
- 在 `computed` 中添加 `hasFamily` 计算属性
- 将家庭数据区(4 个 form-section + submit-bar)包裹在 `...` 中
- 末尾添加 ``
- 页头 `