feat(h5): 首页 H5 壳从定稿原型抽取(#home 满屏,静态 mock,零桥) #96

Merged
guke merged 12 commits from feat/h5-sgbridge-gk into feat/h5-sgbridge 2026-06-30 11:57:48 +08:00

12 Commits

Author SHA1 Message Date
guke de707ec0a9 Merge branch 'feat/h5-sgbridge' of https://gitea.shaguabijia.com/WonderableAI/shaguabijia-app-server into feat/h5-sgbridge-gk 2026-06-30 11:11:44 +08:00
guke ddfe955e9c fix(h5): 补领券看广告金币到账 toast 的金币堆图标(welfare 漏拷致 404)
showCouponAdRewardToast(home/index.html:8841,领券奖励已到账 toast)引用 assets/welfare/index/checkin-coins-600.png,同属抽取时漏本地化的 welfare 子树。从原型 checkin-popup/reward-coins-600.png 补回该图。test: 断言 200。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 11:09:26 +08:00
guke 98cd915e2c fix(h5): 补「去领取」弹窗右上角金币图标(welfare 资源漏本地化致 404)
home/index.html 引用 assets/welfare/index/coin-icon.png,但 h5/home/assets/ 整个 welfare 子树在抽取时漏拷,弹窗右上角金币 404 不显示。从原型资源补回该图标。test: 断言 /h5/home/assets/welfare/index/coin-icon.png 返 200。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 11:05:42 +08:00
guke bf35a45793 chore(h5): 清空「上次比价」横幅静态 mock 占位文案(窑鸡王/¥57.9/淘宝)
横幅默认 display:none + 真实数据覆盖,占位本不显示;清空源码里的 mock 串,留结构与标签(最低价/去查看)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 10:43:09 +08:00
guke 452d7fef8f feat(h5): 首页「上次比价」横幅接真实 /api/v1/compare/records(4 分钟新鲜窗口)
删写死 mock(DEFAULT_LAST_COMPARE_RECORD + localStorage 读),改带 Bearer token 拉真实比价记录;取最近一条 status=success 且 created_at 在 4 分钟内才显示(对齐原生 HomeViewModel.loadLastCompare),否则/未登录/401 隐藏横幅;进页 + 回前台 visibilitychange 各拉一次;点击仍走 SGBridge.navigate('compareResult')。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 10:39:18 +08:00
guke 6682f9d0d4 feat(h5): 首页 feed 真接入 /meituan/feed+top-sales(渲染/翻页/缓存/三态/抢)
删 7 张写死 mock 卡改 CouponCard 动态渲染(随原生:feed-tag 只用 price_label/rank_label,去掉「比团购省」);三排序 tab 智能推荐/距离最近→feed、销量最高→top-sales(删 mock 残留 asc/desc);触底翻页 + 每 tab 5min 缓存 + loading/empty/degraded 三态 + 去重 + 切 tab 防竞态 + 未授权只切高亮不打接口;抢→referral-link([1,3])→SGBridge.openMeituan(deeplink||h5)。含原 H2a 定位空态 WIP 一并提交。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 10:18:45 +08:00
guke 674b8c5589 feat(h5): SGBridge 定位桥 getLocation()(首页 feed 取经纬度;无桥 mock 北京)
含 H2a 定位授权桥方法 isLocationGranted/requestLocationPermission(原 WIP 一并提交)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 09:54:38 +08:00
guke 7fd84ce48f fix(h5): 首页锁外层滚动+关 overscroll 回弹(修可下拽致顶部下移)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 16:47:51 +08:00
guke 8fd2c5ee96 fix(h5): 隐藏首页 H5 原型自带底栏(底栏归原生壳,修双底栏)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 16:38:44 +08:00
guke 9ab4dfc6a4 test(h5): 首页托管 + 素材冒烟(6 passed)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 16:23:07 +08:00
guke 9484768321 feat(h5): 首页跑马灯/三数据卡接同源 /api/v1/platform/*(原地更新,mock 兜底)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 16:22:07 +08:00
guke 4be9848235 feat(h5): 首页 H5 壳从定稿原型抽取(#home 满屏,静态 mock,零桥)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 16:19:45 +08:00