在微前端架构中,Qiankun 是国内最成熟的微前端框架之一。
初学者经常会混淆两个核心 API:registerMicroApps
与 loadMicroApp
。本文将系统讲解它们的区别、使用场景及优缺点,帮助你快速理解微前端设计思路。为方便大家快速上手实践,本文提供了主子应用完整代码 ZIP 包,可直接下载运行体验微前端效果。
一、微前端加载模式概览
Qiankun 提供两种核心加载方式:
-
registerMicroApps
:声明式注册,基于路由自动加载子应用; -
loadMicroApp
:编程式加载,由主应用手动触发子应用加载与卸载。
虽然都可以加载子应用,但本质和使用场景完全不同。
二、核心区别对比
对比项 | registerMicroApps |
loadMicroApp |
---|---|---|
加载方式 | 路由驱动,自动加载子应用 | 手动触发加载子应用 |
卸载方式 | 路由切换自动卸载 | 需手动调用 .unmount() |
实例数量 | 每个子应用只有一个实例 | 可多次调用,同一子应用多实例并存 |
适用场景 | 后台管理系统、SPA、多菜单切换 | 嵌入式模块、弹窗、仪表盘、动态加载 |
控制粒度 | 粗粒度(路由匹配) | 细粒度(代码控制加载/卸载) |
生命周期管理 | 自动管理 bootstrap → mount → unmount | 需手动管理 lifecycle,可完全控制 |
复杂度 | 简单易维护 | 灵活,但需手动管理生命周期 |
💡 核心记忆:
-
registerMicroApps
= 声明式 + 路由驱动 + 自动管理生命周期 -
loadMicroApp
= 编程式 + 手动加载 + 多实例灵活