Skip to content

M5-8详细设计:异步加载与占位边界

这份设计文档说明 M5-8 为什么选择异步组件与懒加载场景,以及它将如何接入现有方法库。

设计目标

把异步加载问题从“组件能不能 import()”还原成“加载策略、占位内容、失败恢复与客户端专属边界如何分层”的边界设计问题,并用一篇案例把现代 Vue / Nuxt 项目里更稳的组织方式说清楚。

为什么在 M5-8 选异步组件与懒加载

在当前方法库里,已经补齐了:

  • 页面型案例
  • 基础组件型案例
  • SSR / hydration 运行时边界
  • Nuxt 页面数据获取与渲染边界
  • 状态管理型案例
  • 复杂交互型案例
  • 认证与权限型案例
  • 路由与布局型案例
  • 容错与降级型案例

下一步最自然补的,就是异步组件、延迟加载和占位降级这条横向主线。因为它会同时影响:

  • 页面首屏体积与主包压力
  • 高风险客户端增强模块的加载时机
  • loading / error / timeout 的统一表达
  • 页面主体和增强模块之间的可用性边界

所以异步组件与懒加载是一个非常适合作为 M5-8 的横向扩展线。

本轮案例的复杂度中心

本轮复杂度中心主要有四个:

  • 哪些模块值得异步化
  • loading / error / timeout 的统一协议
  • 客户端专属异步模块与普通异步模块的分层
  • fallback 与恢复路径的显式化

与现有框架的映射关系

本轮将重点强化统一框架中的这些步骤:

  • 第二步:找到真正的复杂度中心
  • 第五步:用“容器组件 + 展示组件”重新切边界
  • 第六步:显式数据流优先,隐式通信后退
  • 第九步:让页面消费层尽量薄

本轮交付物

本轮预期交付物包括:

  • 新案例:../异步组件与懒加载降级重构.md
  • 新任务拆解:25-M5-8任务拆解-异步组件与懒加载场景.md
  • 新详细设计:26-M5-8详细设计-异步加载与占位边界.md
  • 新开发记录:27-开发记录-异步组件与懒加载降级重构.md

设计约束

本轮继续遵循当前项目约束:

  • 不直接修改独立 demo 源码
  • 只提炼核心逻辑与方法进入文档
  • 每轮新增案例都要同步更新入口、导航和总框架

完成后的预期效果

完成后,当前方法库将会同时覆盖:

  • 页面型重构
  • 基础组件型重构
  • 运行时边界型重构
  • 框架场景型重构
  • 状态管理型重构
  • 复杂交互型重构
  • 认证与权限型重构
  • 路由与布局型重构
  • 容错与降级型重构
  • 异步加载型重构

这会让整套方法库从“案例集合”,继续长成一张更完整的 Vue / Nuxt 架构重构地图。

共 20 个模块,1301 篇 Markdown 文档。