角度微前端方法



据我所知,使用微型前端时有两种流行的情况 -

1(带有组件的单页(每个组件都有自己的服务( 2(从仪表板/导航栏访问多个页面(每个部分都有自己的服务(

我已经挖掘了一段时间,据我所知,案例 1 在使用 Angular 自定义元素时非常简单。

问题是我需要解决案例 2。 根据设计,我得到了一个仪表板(页面侧面的导航栏(,其中包含不同组件入口点(报告、用户等(的路由列表。

我希望这部分是容器,容器的navabar上的每条路线都通向一个独立的微型前端,该前端可以独立存在并作为容器的一部分存在。 所以我会有例如报告服务,用户服务等...以及我构建完整站点时的主/容器服务。

我很难弄清楚实现这一目标的最佳方法是什么,我看过各种各样的文章,但我仍然看不到清晰的路径(产品准备好等......

是否有任何流行且准备好生产的方法?

编辑:这个想法是例如 - 能够让两个团队各自在网站的单独部分(单独的上下文(上工作,而不会相互影响。两者都有站点的独立部分,并且在部署时可以将更改添加到主包含站点。这两个子站点之间的连接最少(如果有(,它们可以单独运行或在容器内运行。

我添加了一篇文章的链接,该文章解释了我的问题等等,并且做得比我能做的要好得多 https://martinfowler.com/articles/micro-frontends.html

我在项目中遵循了这种方法,希望对您有所帮助

可从仪表板/导航栏访问多个页面(每个部分都有自己的服务(

我们基于用户模块、报告模块、初始模块等功能创建了多个模块,以便我们可以根据路由延迟加载不同的模块。

每个模块都有自己的服务、组件、类和模块所需的资产。例如,InitialModule 将仅具有与登录名和仪表板相关的组件,我们在main.ts中将其设置为bootstrap模块,以便通过下载这两个组件所需的 js、CSS 和 HTML 而不是所有资产来快速加载页面

现在我正在开发一个类似于你所问的项目。我目前的方法是使用库单 spa 来组织和导入不同的微前端。我目前有一个导航栏,它是一个始终显示的角度应用程序,并使用角度路由在导航下方加载的其他应用程序之间切换。你可以从这里开始。

相关内容

最新更新