如何将内容动态传递给 ComponentPortal 由 cdkPortalOutlet 渲染?
How to dynamically pass content to ComponentPortal to be rendered by cdkPortalOutlet?
我已经 Angular CDK Portals 工作了,因为我可以动态创建一个门户组件,将它附加到 cdkPortalOutlet,并让它呈现现有模板,但我不知道如何为该门户组件提供数据。
在找到 CDK Portals 之前,我遵循了 Dynamic Component Loader 上的 Angular 指南,该指南介绍了手动创建自定义准门户系统并设置 @Input 装饰器以接受您的数据,但是我在 CDK 门户中找不到任何关于类似 function/ability 的信息。
我也尝试跟随这篇 Angular-in-Depth 文章,但它似乎也在很大程度上重新发明了 CDK 门户网站的轮子。
我看到一些关于 "contexts" 和 EmbeddedViewRef 的讨论,但我没有找到足够的信息来说明它们的实际用途或实际使用方式(至少,不足以对我目前的理解水平有所帮助)。
除了直接将数据抓取代码放在每个门户组件中之外,如何在动态创建门户之前将数据动态传递给门户组件??我在哪里可以找到更多信息:PortalComponent "context" 或 EmbeddedViewRef,如果它们中的任何一个是我需要的?
我不得不实现一次动态组件(我不知道你是否遇到了和我一样的问题),我发现这个包对我来说是最好的。看看:
https://www.npmjs.com/package/ng-dynamic-component
使用这个库,您可以像这样绑定数据:
<ndc-dynamic
[ndcDynamicComponent]="component"
[ndcDynamicInputs]="inputs"
[ndcDynamicOutputs]="outputs"
></ndc-dynamic>
我已经 Angular CDK Portals 工作了,因为我可以动态创建一个门户组件,将它附加到 cdkPortalOutlet,并让它呈现现有模板,但我不知道如何为该门户组件提供数据。
在找到 CDK Portals 之前,我遵循了 Dynamic Component Loader 上的 Angular 指南,该指南介绍了手动创建自定义准门户系统并设置 @Input 装饰器以接受您的数据,但是我在 CDK 门户中找不到任何关于类似 function/ability 的信息。
我也尝试跟随这篇 Angular-in-Depth 文章,但它似乎也在很大程度上重新发明了 CDK 门户网站的轮子。
我看到一些关于 "contexts" 和 EmbeddedViewRef 的讨论,但我没有找到足够的信息来说明它们的实际用途或实际使用方式(至少,不足以对我目前的理解水平有所帮助)。
除了直接将数据抓取代码放在每个门户组件中之外,如何在动态创建门户之前将数据动态传递给门户组件??我在哪里可以找到更多信息:PortalComponent "context" 或 EmbeddedViewRef,如果它们中的任何一个是我需要的?
我不得不实现一次动态组件(我不知道你是否遇到了和我一样的问题),我发现这个包对我来说是最好的。看看:
https://www.npmjs.com/package/ng-dynamic-component
使用这个库,您可以像这样绑定数据:
<ndc-dynamic
[ndcDynamicComponent]="component"
[ndcDynamicInputs]="inputs"
[ndcDynamicOutputs]="outputs"
></ndc-dynamic>