微前端调研及简析SPA实现原理
最近对微前端讨论很多,梳理下自己对微前端的理解以及业内的一些微前端尝试反馈。 第零部分:自己对微前端理解 第一部分:基于Single-SPA微前端的一些demo 第二部分:Single-SPA微前端实现原理简析 第三部分:微前端业内一些总结 第零部分:自己对微前端理解 在判断自己项目是否需要使用微前端前,只要记住一句话即可:杀鸡焉用牛刀。 如果项目很简单,请不要没有困难创造困难; 如果项目太大,受够了iframe的种种掣肘,同时你还有一帮陪你肝新玩法的同事,能够准备好面对意想不到的快乐和意想不到的痛苦,深吸一口气,来,我们搞起。 在内部的两次讨论,能够看到不少优点,但同时也需要开发者有一个规范约束,才能发挥微前端的能力。有几个点需要注意: 状态隔离与否 - 状态共享需要规范 样式隔离 - 需要规范 注册应用 - 需要规范 三方依赖不统一 向下兼容方案 第一部分:Single-SPA微前端demo single-spa-learn-kit :一个基于SPA的基础demo,可以直接run起来 微前端 single-spa :图文并茂,方案有差异,提出几个坑点,留意下: 在配置systemJs引用时会有跨域问题,这时候可以配置nginx的返回头进行解决,详情仓库见。 在构建vue项目时,App.vue文件的主div id必须为你项目构建的id,因为第一次构建后你的html上的div会消失