我正在尝试通过@ContentChildren
和 QueryList
ussign动态更改组件的内容ng-container *ngIf="condition; else tplRef"
,当condition
真正的ng-container
内容是可见的,QueryList
但当condition
是假的时候,ng-template
内容是不可见的。
我的目标是根据“查询”可见的条件显示不同的元素
我正在尝试通过@ContentChildren
和 QueryList
ussign动态更改组件的内容ng-container *ngIf="condition; else tplRef"
,当condition
真正的ng-container
内容是可见的,QueryList
但当condition
是假的时候,ng-template
内容是不可见的。
我的目标是根据“查询”可见的条件显示不同的元素
你需要保持<ng-template #ref>... </ng-template>
在<app-container>
试试这样:
<app-container>
<app-container-item name="Item 1"></app-container-item>
<app-container-item name="Item 2"></app-container-item>
<!-- work fine if true -->
<ng-container *ngIf="true; else ref">
<app-container-item name="Item when true"></app-container-item>
</ng-container>
<!-- should display content from ref, but don't work :( -->
<ng-container *ngIf="false; else ref">
<app-container-item name="Item when true"></app-container-item>
</ng-container>
<ng-template #ref>
<app-container-item name="Item when false"></app-container-item>
</ng-template>
</app-container>
你已经分开了<ng-template #ref>
,<app-container>
你必须保留在<ng-template #ref>
里面<app-contianer>
。这就是解决方案!