什么是微前端
Techniques, strategies and recipes for building a modern web app with multiple teams that can ship features independently.
多个团队 独立的功能 通过一定的技术手段(就是我们选择的框架) 构建成一个web应用
需要注意什么
基于上面的特点我们构建微前端app的时候需要考虑下面几点
技术栈无关: 主框架不限制接入应用的技术栈,微应用具备完全自主权
独立开发、独立部署: 微应用仓库独立,前后端可独立开发,部署完成后主框架自动完成同步更新
独立运行: 聚在一起的时候,每个微应用之间状态隔离,不会相互影响
总起来 就是自主、独立、可聚合
做微前端的好处
对于开发来说:
- 可维护性更好:每个微应用代码量少,不容易产生不可预知的耦合
- 开发效率更高:每个微应用独立开发、测试,构建速度更快,模块级复用
- 接入成本更低:技术栈无关
- 增量升级: 在面对各种复杂场景时,我们通常很难对一个已经存在的系统做全量的技术栈升级或重构,而微前端是一种非常好的实施渐进式重构的手段和策略
- 巨石应用的维护性差 开发效率低的问题
对于用户来说:
- 容错性更高:一个微应用不可用,不会影响其他应用的展示
对于公司来说:
- 横向的组织扩展成为可能
技术选型
npm
iframe
single-spa
qiankun
modulefederation