fix(miniprogram): restore secondary pages on real devices

This commit is contained in:
2026-08-13 11:32:21 +08:00
parent 58787e738a
commit 39a2e53e61
17 changed files with 192 additions and 23 deletions
+14
View File
@@ -6,6 +6,20 @@
2026-08-13
任务:微信真机二级页面白屏修复。
根因:服务申请和协作任务详情/服务记录页面在运行时从 workspace 包 `@lehuo/contracts` 导入业务常量。现有小程序工程没有生成 `miniprogram_npm`,常规 TypeScript 检查会擦除类型导入并通过,但真机无法解析运行时 workspace 模块,导致页面脚本在 `Page()` 注册前终止并显示空白。另发现内容详情使用非小程序原生 `article` 标签、项目详情使用 `strong` 标签,以及详情页缺少路由参数时可能持续处于加载状态。
完成:将申请方式、服务分类和服务记录类型的真机运行时字典迁入小程序本地模块,继续用共享契约类型做编译约束;API 地址改为按请求动态读取,并安全兼容空存储值;服务申请在服务分类接口暂不可用时展示本地批准分类与明确连接提示,不再出现无内容页面;项目、活动和内容详情补充缺少参数的恢复状态;替换不受支持的 WXML 标签。新增页面完整性门禁和运行时 workspace 导入门禁,校验 18 个页面四件套、静态路由注册、WXML 标签和真机运行依赖,纳入小程序 typecheck/build。
范围:未新增模拟业务数据、未绕过认证/权限/审计;本地服务分类仅用于表单可见与选择,最终提交仍调用真实 API。服务对象档案和服务记录继续只对获得 `assigned_cases:read` 权限且被指派的人员展示最小必要数据。
验证:格式检查、Lint、全仓类型、27 个单元测试、34 个真实 MySQL 集成测试和全仓生产构建通过;新增页面完整性门禁通过 18 个页面,运行时 workspace 导入门禁通过。8 个 migration 在隔离 `lehuo_test` 库无待执行项。仍需用户在微信开发者工具执行“清缓存并重新编译”,再进行真机二级页面复验。
---
2026-08-13
任务:参考图小程序端与管理端视觉全量还原(延期能力仅预留)。
完成:建立 primitive→semantic→component 三层设计令牌;按参考图重建小程序品牌首页、八宫格服务入口、公告、项目图文卡、正式底部导航、图文服务申请、项目详情事实区和绿色个人中心;保留既有真实申请、项目、活动、志愿报名、协作任务、消息和内容业务流程。管理端新增深色图标侧栏、工作概览、真实 KPI、月度申请/完成趋势、服务类型分布、快捷入口和工单横向状态步骤条,并沿用既有脱敏表格、筛选、详情、权限和审计逻辑。新增四张虚构公益品牌场景素材并压缩用于本地包,不作为真实成果证据。