gpt4 book ai didi

javascript - 在 Angular 2 中动态注入(inject)已编译的应用程序

转载 作者:行者123 更新时间:2023-11-28 04:37:01 25 4
gpt4 key购买 nike

我需要由各个团队独立开发多个 Angular 2 应用程序。每个团队都将安排独立的发布。最后,所有这些应用程序都需要在运行时注入(inject)到一个主应用程序中。它们需要作为单页应用程序运行。我们尝试了 Angular 2 的延迟加载模块。我们看到的障碍之一是,如果项目解决方案中没有延迟加载模块,我们就无法使用 Web Pack 编译主应用程序。

这是我目前的解决方案的结构:

Image1

这就是我定义路线的方式

image2

我们定义了两条延迟加载两个模块的路由(LazyModule 和 MoreLazyModule)。这个解决方案效果很好。当我们从解决方案中删除这些模块并尝试使用 web pack 构建它时,编译器会抛出错误。有没有什么方法可以解耦模块,将它们开发为独立的项目,并将这些模块注入(inject)到生产中?

最佳答案

延迟加载是您问题的解决方案(至少据我所知)。

如果我理解正确,您正在尝试构建的是一个具有外部容器(app.module 和 app.component)的应用程序,需要编排其他几个独立的应用程序。整个事情需要表现为单页应用程序。

如果是这种情况,那么我建议您执行以下操作:

  • 有一个团队(或个人负责所有代码)容器应用程序(app.module、app.component、任何其他常见代码)可能想要在各个应用程序之间共享)- 容器应用程序引用所有子应用程序(并在新子应用程序出现时立即获取更新已添加)
  • 有不同的团队负责不同的子应用 - 这些团队按照其能力范围内的准则开展工作,并遵守准则准备好后存储库,但使用整个项目(即也是其他团队的子应用程序)任何时候他们构建

我不认为这样组织工作有任何问题,只要每个团队只有在所有测试都通过后才将代码 checkin 到中央代码存储库(并且测试彻底覆盖了应用程序功能)。负责容器应用程序的团队所需的协调工作实际上非常少。

关于javascript - 在 Angular 2 中动态注入(inject)已编译的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44117095/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com