Files
soul-yongping/miniprogram/RESTORE-ANALYSIS.md

2.5 KiB
Raw Blame History

miniprogram 功能还原分析报告

一、对比结论

项目 miniprogram甲方 miniprogram2你写的
页面分享 仅 read、referral 有 几乎所有页面都有
scene 解析 有 utils/scene.js
推荐码获取 分散userInfo?.referralCode 等) 统一 app.getMyReferralCode()
书籍 API /api/book/all-chapters /api/miniprogram/book/all-chapters
特有页面 vip、member-detail scan、profile-edit

二、已完成的还原项

1. 基础能力app.js + utils/scene.js

  • 新增 utils/scene.js:扫码 scene 参数编解码,支持 mididref
  • app.js
    • 引入 parseScenehandleReferralCode 支持 options.scene 解析
    • 新增 getMyReferralCode():统一获取邀请码
    • 新增 getSectionMid(sectionId):根据 id 查 mid
    • loadBookData 改为 /api/miniprogram/book/all-chapters

2. 页面分享onShareAppMessage

已为以下页面补充分享,路径统一带 ref 参数:

  • index、chapters、match、my
  • read、referral原有已统一用 getMyReferralCode
  • search、settings、purchases、privacy
  • withdraw-records、addresses、addresses/edit
  • agreement、about、vip、member-detail

3. read.js 分享逻辑

  • 使用 app.getMyReferralCode() 替代 userInfo?.referralCode || wx.getStorageSync('referralCode')
  • 保持 onShareAppMessageonShareTimeline 行为不变

4. API 路径修正

  • app.loadBookData/api/book/all-chapters/api/miniprogram/book/all-chapters
  • index.loadBookDataloadFeaturedFromServerloadLatestChapters:同上
  • chapters.loadDailyChapters:同上

三、未改动项(保留甲方逻辑)

  • vip 相关接口/api/vip/members/api/vip/status/api/vip/profile 仍为原路径,未改为 /api/miniprogram/*(若 soul-api 无对应 miniprogram 接口,需后端补充)
  • 页面结构:保留 vip、member-detail未引入 scan、profile-edit

四、后续建议

  1. soul-api 路由:确认 /api/miniprogram/book/all-chapters 已注册;若 vip 需在小程序使用,建议在 miniprogram 组下增加等价接口。
  2. referral.js:检查是否已使用 app.getMyReferralCode(),若仍用旧方式可统一替换。
  3. read.js 的 mid 支持miniprogram2 的 read 支持 mid 参数(便于扫码直达),若需要可在 miniprogram 的 read 中补充 sectionMidgetShareConfig 的 mid 逻辑。