微前端相关学习

目录

一、微前端是什么

1.1 微前端要解决什么问题

1.2 和「拆 npm 包」「单体多仓库」的差别

1.3 适用场景与不适用场景


二、前置知识

2.1 浏览器:同源、Cookie、CORS、History 与路由

2.2 构建与运行时:ESM、动态 import、publicPath、多入口

2.3 全局作用域与样式作用域(为后面「隔离」铺垫)


三、微前端的「能力清单」

3.1 加载与生命周期(bootstrap / mount / unmount)

3.2 应用间通信(事件、props、全局 store、postMessage)

3.3 路由协同(基座与子应用、刷新与深链)

3.4 样式隔离与宿主定制(变量、Shadow DOM、前缀、@layer)

3.5 JS 隔离与多版本依赖(React / Vue 重复实例问题)

3.6 独立构建、独立部署与版本策略(灰度、回滚、兼容)


四、常见集成形态

4.1 基座应用 + 多个子应用 SPA

4.2 iframe / 微件嵌入

4.3 Web Components / Shadow DOM 作为子应用或部件壳

4.4 仅仓库/包拆分、统一部署(与真·微前端的边界)


五、技术选型与代表方案(择一二深入即可)

5.1 以运行时为纲:single-spa、qiankun 等(概念与差异)

5.2 以构建为纲:Webpack Module Federation(exposes / remotes / shared)

5.3 其他:无界(wujie)、EMP、自研加载器等(可选)

5.4 选型维度表(团队、技术栈、隔离要求、运维成本)


六、工程化与上线

6.1 CI/CD、静态资源与 CDN、缓存与 hash

6.2 配置下发与环境(子应用 entry、API 基地址)

6.3 监控、日志、错误边界与性能(首屏、子应用加载失败)

6.4 安全(子应用可信源、CSP、鉴权传递)


七、实践与踩坑

7.1 本地与线上联调清单

7.2 常见问题(样式串味、路由劫持、依赖重复、跨域登录态)