3

是否可以将多个项目(通过新的 CLI 生成应用程序功能创建)延迟加载到一个大应用程序中?

在我工作的地方,我们有多个项目,不同的团队在处理它们,然后每个应用程序都单独提供服务,但它们都是更大应用程序的小应用程序。因此,每次在应用程序之间导航时,您都必须等待加载时间。我想做的是创建一个应用程序,它充当大应用程序的外壳,并且该外壳程序只是将这些应用程序作为模块或其他东西加载,以便延迟加载或预加载,这将使大应用程序顺利运行。

我想通过保持开发过程正常工作来做到这一点。

我想我们会有这样的结构

projects/
   app1
   app2
   app3
   app4
app/
   app.module.ts
   app.component.ts
   ...

等等,以便那些应用程序,使用 git 克隆。

我目前拥有的是

app/
  app.module.ts
  app.component.ts
  modules/
    app1
    app2
    app3
    app4

他们是一个项目,但这行不通,因为如果人们在一个项目中处理大约 7 个应用程序,那将是地狱般的。

问题是,是否可以从另一个项目中延迟加载模块?

{path: 'app1', loadChildren: '../projects/app1/src/app.module#AppModule'}

如果可能的话,上面的代码会如何?

4

1 回答 1

4

我真的不认为它可能在单独的角度项目之间进行延迟加载。但是,是的,可以在同一个 cli 项目中使用 angular-cli 和多个应用程序(每个应用程序代表不同的项目)。

请参阅此链接以在同一个 cli 项目中拥有多个应用程序。

https://github.com/angular/angular-cli/wiki/stories-multiple-apps

https://yakovfain.com/2017/04/06/angular-cli-multiple-apps-in-the-same-project/

现在可以在这些应用程序之间建立惰性路由。这些链接应该可以帮助您入门。

https://github.com/gatimus/multiple-apps-lazy-loading

https://github.com/angular/angular-cli/issues/8321

希望这可以帮助。

于 2018-05-16T08:59:48.380 回答