一、路由分发式
路由分发式前端,即通过路由将不同的业务分发到不同的独立前端应用上。其通常可以通过 HTTP 服务器的反向代理来实现,或者通过应用框架自带的来解决。 其架构图如下:
就当前而言,路由分发式的架构应该是采用的最多、最容易的"微前端"方案。但是这种方式看上去更像是多个前端应用的聚合,即我们 只是将这些不同的前端应用拼凑到一起,使他们看起来像一个完整的整体。但它们并非是一个整体,每当用户从 A 应用转换到 B 应用 的时候,往往需要刷新一下页面、重新加载资源文件。
在这个架构中,我们只需要关注应用间的数据传递方式。通常,我们只需要将当前的用户状态,从 A 应用传递到 B 应用即可。如果 两个应用在同一个域里运行,就更加方便了,它们可以通过 LocalStorage、 Cookies 、 IndexDB 等方式共享数据。值得注意的是 在采用这种应用时,缺少了对应用状态的处理,需要用户重新登录,这种体验对用户来说相当的不友好。