docs(plans): 留痕 K33-A 首页沉浸式 feed
This commit is contained in:
1 parent
aa69d4b0c6
commit
c43321e19f
2 files changed
+58
No files matched your search
@@ -1,3 +1,33 @@
|
||||
## [已处理] 2026-10-20 | K33-A 首页改为沉浸式 feed 流(仅 App 端)
|
||||
|
||||
**用户指令(2026-10-20,原文)**:
|
||||
> 「现在把首页改下 打开就是feed流 滑动切换短剧」
|
||||
|
||||
**参考图**:`20261020-132616.jpg`(全屏竖版 feed:视频铺满、右侧互动栏、底部剧集信息、上下滑动换剧)。
|
||||
|
||||
**现状**
|
||||
- `lib/pages/home/home_view.dart` 的 `_home()` 返回 `HomeBrowseView`(浏览型首页:频道 + 轮播 + 双列网格)。
|
||||
- 播放器已具备首页 feed 能力:`PlayerPage(homeMode: true, feedDramas: [...])` 使用竖向 `PageView` 切换短剧,配套 `HomeFeedOverlay`(标题、搜索、清屏、更多、右侧点赞/评论/分享/收藏、底部信息卡),并可通过 `onImmersiveChanged` 通知外层隐藏底部导航;`HomeLogic` 已有 `videoImmersive` 与对应开关。
|
||||
|
||||
**口径(只改 Flutter,不动后端、不改接口)**
|
||||
1. 首页 Tab 默认即 feed:
|
||||
- `_HomeTabsState._home()` 改为返回
|
||||
`PlayerPage(homeMode: true, embedded: true, active: logic.tab == 0, drama: widget.dramas.first, initialIndex: 0, feedDramas: widget.dramas, onDramaChanged: logic.onDramaChanged, onImmersiveChanged: logic.onImmersiveChanged, onSearch: () => logic.select(1, search: true), onDiscover: () => logic.select(1), onMy: () => logic.select(3))`;
|
||||
- 进入首页即为第一部的 feed,视频自动播放,上下滑动切换短剧(沿用播放器现有竖向 PageView,不新写一套)。
|
||||
2. 底部导航保持 4 槽(首页/剧场/创作/我的);feed 清屏态仍通过 `onImmersiveChanged` 隐藏底栏,现有逻辑不动。
|
||||
3. 首页 feed 的搜索按钮跳剧场并聚焦搜索(`logic.select(1, search: true)`),「更多」里的下载/小窗保持现状。
|
||||
4. 浏览型首页组件(`home_browse_view.dart`、`home_browse_logic.dart`、`widgets/home_drama_grid.dart`、`widgets/home_browse_header.dart`)保留不删,首页不再引用它们(如 analyzer 报未使用 import 就清 import)。
|
||||
5. 切到其它 Tab 时 feed 暂停(`active: false` 已由播放器处理),切回首页保持当前集与当前剧;`videoImmersive` 状态与 `onSystemBack` 行为不变。
|
||||
|
||||
**测试/门禁**
|
||||
- 更新因首页改为 feed 而失败的用例:首页断言改到 feed 键(如 `home-feed-title`、`home-feed-info-card`、`player-video-tap`、`rail-like`),删除或迁移依赖 `home-browse-page`、`home-channels`、`home-hero-banner` 的首页用例(`HomeDramaCard` 组件自身测试保留);
|
||||
- 新增用例:进入首页即出现 feed(`home-feed-title` 或竖向 PageView)、向上滑动后标题变化(切换短剧)、切到剧场 Tab 后 feed 不再可见;
|
||||
- `dart analyze lib test` 零告警 + `flutter test` 全过 + `flutter build apk --debug`。
|
||||
|
||||
**流程**:从 `develop` 拉 `feature/flutter-k33-home-feed`;作者 `Zhou Weidong <502333560@qq.com>`;`--no-ff` 合回 develop 并 push;PROGRESS 留痕;真机验收由用户执行。
|
||||
|
||||
---
|
||||
|
||||
## [已处理] 2026-10-20 | K32-A 剧场页按参考图重做(仅 App 端)
|
||||
|
||||
**用户指令(2026-10-20,原文)**:
|
||||
|
||||
Reference in new issue
Block a user