规划微信小程序主包、业务分包及引用关系,检查启动路径、包体限制和分包加载失败后的体验。
## 任务目标 请为当前微信小程序制定或审查分包方案。 以核查和评审为主,给出有证据的判断及可复核的修改建议;本次用户另有明确实现要求时,按其授权范围执行。 ## 输入信息(选填) 两项均可留空,也可直接用一句话说明目标并附上已有资料。无需自行整理版本、配置或完整需求表;能读取的内容由执行者补齐。 分包规划目标:从现有 app.json 和可取得的构建体积报告检查主包压力与跨包引用;没有超限现象时先按真实启动和常用业务路径复核现有包归属。 工程或构建资料:读取小程序目录、app.json、TabBar、分享和扫码入口、公共资源引用、构建报告与主体及基础库配置。 ## 信息不完整时 先使用本次对话中已经说明的信息;用户留空、写“暂无/不清楚”或未替换输入标记,都按缺失处理,不当作真实路径、参数或业务值。已能从资料确定的内容不重复询问,不编造文件、日志、接口、业务值或执行结果。在用户已授权的范围内读取相关工程和材料,不为补齐输入擅自扩大操作范围。 ### 优先确认 - 梳理启动页、TabBar 和直接进入页面,追踪脚本、组件及静态资源归属。 - 检查普通分包嵌套、跨包依赖及未被覆盖资源,识别独立分包和分包异步化是否真的需要。 - 从本次构建报告取得上传包体,结合可确认主体、发布渠道和当前官方规则核对限制。 ### 可采用的默认处理 - 默认审查并提供规划,不迁移文件或发布;明确重构时才按受影响页面实施最小包调整。 - 优先保留入口和公共依赖,未证实收益不引入独立分包或异步跨包能力。 - 缺体积报告时只给待测项和资源候选,不以源码目录大小或旧平台限额宣称可发布。 ### 必须有依据的事项 - 拟迁移页面承接外部分享或扫码,而入口兼容要求与初始化依赖无法确定,不能自行改变既有直达路径。 - 主体或发布渠道不明导致适用体积限制无法确认时,不给最终发布合规结论。 只有缺口会改变业务结果、权限边界或关键实现,且无法从现有资料确认时,才集中提出最多 3 个关键问题;说明影响,并继续完成不依赖答案的部分。一般命名、排版和可逆实现细节按现有约定决定,不逐项等待确认。 ### 资料仍不足时的交付 - 只有目录和配置时交付页面归属、引用关系及最小调整草案,所有包体栏标待构建。 - 无法使用开发者工具时给构建取证与冷启动、分享直达、弱网首次下载的真机验收路径。 ## 执行要求 按微信小程序的包结构和发布要求审查方案。普通分包、独立分包和分包异步化的能力边界不同;所有限制需结合本次发布时的官方说明核实。 1. 从真实入口梳理启动页、TabBar 页面、常用业务路径和低频功能,列明每个页面依赖的脚本、组件及静态资源。优先让首个业务任务所需内容清晰可控,不以平均分配文件大小作为分包目标。 2. 对照 app.json 的分包配置核查目录,保证 TabBar 页面留在主包、分包根目录没有互相嵌套。找出未被分包覆盖而意外进入主包的资源,说明它们是公共依赖还是可以迁移的业务资源。 3. 检查普通分包之间的脚本、模板和资源引用,明确允许依赖主包的部分。若需要使用分包异步化或独立分包,单独核查该能力的版本与入口要求,不能只修改路径后假定运行时一定能找到依赖。 4. 使用构建报告记录主包、各分包和全部包体积,区分源码目录大小与最终上传体积。按当前主体和发布渠道核对平台限制,给出超限资源的具体位置及压缩、按需加载或去重方案,不沿用网上过时数字。 5. 检查冷启动、页面分享直达、扫码进入、TabBar 切换和从主包进入分包的路径。分包首次下载失败时给出用户可理解的反馈和重试入口,避免页面空白后只能退出小程序。 6. 在开发者工具构建后进行真机验证,覆盖弱网、首次下载、再次进入和升级后的资源加载。对于抽出的公共模块,重点回归初始化顺序与业务状态,记录体积和启动体验的实际变化。 ## 交付与验收 输出:页面与包归属表、依赖关系、配置改动、包体实测和进入路径验收表。没有构建结果时保留体积栏待测,不能把估算值作为可发布证明。涉及重构先列明受影响页面,保留已有业务入口和必要的兼容处理。 ### 本条完成检查 - 交付主包和各分包的页面归属、公共依赖及配置建议,确认 TabBar 与跨包引用规则。 - 分别记录主包、分包、总包实际上传体积及采用的当前限制依据。 - 验证启动、直达、TabBar、分包下载失败和再次进入;未构建或未真机验证不宣称可发布。 按本条要求组织结果,使用简洁中文和一致的编号、术语、缩进及空行;已有项目格式优先。只说明实际完成的内容,将采用的假设、未完成项和缺少的条件写在相关位置,不额外生成无关文档。未执行、无法复现或缺少证据的检查如实标注,不宣称已通过或已有性能收益。 ## 参考资料与适用边界 官方来源(2026-09-08 核验): - [腾讯微信《微信小程序:分包加载》](https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages.html) - [腾讯微信《微信小程序:使用分包》](https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/basic.html)