angular 8:用于多个视图子引用的单个 ng-container
angular 8: single ng-container for multiple view child references
我的组件中有三个 viewchild 装饰器,如下所示:
@ViewChild('propertiesPage1', { read: ViewContainerRef, static: true }) propertiesPage11: ViewContainerRef;
@ViewChild('propertiesPage2', { read: ViewContainerRef, static: true }) propertiesPage22: ViewContainerRef;
@ViewChild('propertiesPage3', { read: ViewContainerRef, static: true }) propertiesPage33: ViewContainerRef;
我的 html 文件中提供了这些参考文献,如下所示:
<div>
<ng-container #propertiesPage1>
</ng-container>
</div>
<div>
<ng-container #propertiesPage2>
</ng-container>
</div>
<div>
<ng-container #propertiesPage3>
</ng-container>
</div>
我想将所有三个容器合并为一个,并且 ng-container 应该只包含对最近更改的 viewchild 的引用。
像这样:
<div>
<ng-container #propertiesPage>
</ng-container>
</div>
如何实现?
@ViewChild
装饰器仅适用于一个 child。要获得 children 数组,您需要使用 @ViewChildren
这样试试:
@ViewChildren('propertiesPage') pages: QueryList<ViewContainerRef>
我的组件中有三个 viewchild 装饰器,如下所示:
@ViewChild('propertiesPage1', { read: ViewContainerRef, static: true }) propertiesPage11: ViewContainerRef;
@ViewChild('propertiesPage2', { read: ViewContainerRef, static: true }) propertiesPage22: ViewContainerRef;
@ViewChild('propertiesPage3', { read: ViewContainerRef, static: true }) propertiesPage33: ViewContainerRef;
我的 html 文件中提供了这些参考文献,如下所示:
<div>
<ng-container #propertiesPage1>
</ng-container>
</div>
<div>
<ng-container #propertiesPage2>
</ng-container>
</div>
<div>
<ng-container #propertiesPage3>
</ng-container>
</div>
我想将所有三个容器合并为一个,并且 ng-container 应该只包含对最近更改的 viewchild 的引用。 像这样:
<div>
<ng-container #propertiesPage>
</ng-container>
</div>
如何实现?
@ViewChild
装饰器仅适用于一个 child。要获得 children 数组,您需要使用 @ViewChildren
这样试试:
@ViewChildren('propertiesPage') pages: QueryList<ViewContainerRef>