Angular 8中没有entryComponents的服务响应中的动态组件?

Posted

技术标签:

【中文标题】Angular 8中没有entryComponents的服务响应中的动态组件?【英文标题】:Dynamic components from service response without entryComponents in Angular 8? 【发布时间】:2020-10-18 03:07:07 【问题描述】:

我正在使用 Angular 8 并尝试构建一个系统,该系统允许我们的客户从一组组件中选择他们想要加载的组件。我们有大约 10 个组件,每个组件都有 3 个版本供他们选择。我想使用使用 componentFactoryResolver 动态生成的组件,这样我就可以为客户端 1 构建“组件 A”,为客户端 2 构建“组件 B”,并根据来自服务加载这些组件之一的响应,有效地允许它们创建他们自己的网站版本(从给定的“模板”)。

问题是,所有这些组件都必须进入 entryComponents 进行预编译。这些组件中可能有一半一开始是延迟加载的,我不想为每个组件预编译 3 个版本。理想情况下,我希望根据服务的响应即时编译它们(告诉我要加载哪个)。

是否有任何解决方案来解决这个条目组件混乱?

【问题讨论】:

【参考方案1】:

EntryComponents 不再需要并且在 Angular 9 中已被弃用,因此升级到 Angular 9 是一个不错的解决方案。

【讨论】:

哇...我是幸运还是什么!在 Angular 9 之前,我无法解决这个问题,但现在它已经为我解决了。谢谢!

以上是关于Angular 8中没有entryComponents的服务响应中的动态组件?的主要内容,如果未能解决你的问题,请参考以下文章

没有 TypeScript 的 Angular 8 依赖注入?

Angular 8:如何在没有刷新令牌的情况下刷新令牌

Firebase Hosting(Angular 8 + Service Worker)没有在刷新时更新

Summernote 在 Angular 8 中无法正确更改内容

Angular 8 - URL 使用 routerLink 加载,但在 LOCALHOST 中的浏览器中直接访问时不显示

Angular 8 急切加载模块(包括应用程序模块)不会出现在 chrome 开发工具中