微前端

  1. 微前端是什么
    微前端是一种多个团队通过独立发布功能的方式来共同构建现代化 web 应用的技术手段及方法策
    略。通俗来说,就是在一个web应用中可以独立的运行另一个web应用。
  2. 微前端有什么使用场景
比如制作一个企业管理平台,把已有的采购系统和财务系统统一接入这个平台;

比如有一个巨大的应用,为了降低开发和维护成本,分拆成多个小应用进行开发和部署,然后用一个平台将这些小应用集成起来;

又比如一个应用使用vue框架开发,其中有一个比较独立的模块,开发者想尝试使用react框架来开发,等模块单独开发部署完,再把这个模块应用接回去
  1. 一个完整的微前端框架需要具备哪些能力?
*子应用的加载和卸载能力*

页面需要从一个子应用切换到另一个子应用,框架必须具备加载、渲染、切换的能力

*子应用独立运行的能力*

子应用运行会污染全局的 window 对象,样式会污染其他应用,必须有效的隔离起来

*子应用路由状态保持能力*

激活子应用后,浏览器刷新、前进、后退子应用的路由都应该可以正常工作

*应用间通信的能力*

应用间可以方便、快捷的通信
  1. 使用微前端有什么收益呐?
*技术栈无关*

主框架不限制接入应用的技术栈,微应用具备完全自主权

*独立开发、独立部署*

微应用仓库独立,前后端可独立开发,部署完成后主框架自动完成同步更新

*增量升级*

在面对各种复杂场景时,我们通常很难对一个已经存在的系统做全量的技术栈升级或重构,而微前端是一种非常好的实施渐进式重构的手段和策略

*独立运行时*

每个微应用之间状态隔离,运行时状态不共享