[英]Bind a template to a ng-container
是否可以將ng-template
引用綁定到ng-container
,如if..else
用法一樣?
例如,我擁有的是:
<section class="section_one">
<ng-container
*ngIf="someCondition"
bind-template="someTemplate"
>
</ng-container>
</section>
...
<section class="section_two">
<ng-container
*ngIf="!someCondition"
bind-template="someTemplate"
>
</ng-container>
</section>
...
<ng-template #someTemplate>
...
</ng-template>
我想知道是否已經內置了bind-template
之類的東西。 ng-container
和ng-template
均不存在。
因此,基本上,根據情況,此模板會出現在第一部分或第二部分中。 我知道我可以為其創建一個組件,但是我不想要它,因為該模板與當前組件完全相關。 我想要的是根據這種情況在不同區域顯示模板中的數據。
我可以在ng-container
上使用if..else
來實現它,但是這看起來有點怪異,因為必須顛倒條件。
<section class="section_one">
<ng-container *ngIf="!someCondition; else someTemplate">
</ng-container>
</section>
...
<section class="section_two">
<ng-container *ngIf="someCondition; else someTemplate">
</ng-container>
</section>
...
<ng-template #someTemplate>
...
</ng-template>
偶然地(不是專門搜索這個問題),我去找完全符合我在這個問題中想要的東西:
https://angular.io/api/common/NgTemplateOutlet
這樣的事情應該起作用:
<section class="section_one">
<ng-container
*ngIf="someCondition"
*ngTemplateOutlet="someTemplate"
></ng-container>
</section>
<section class="section_two">
<ng-container
*ngIf="!someCondition"
*ngTemplateOutlet="someTemplate"
></ng-container>
</section>
<ng-template #someTemplate>
...
</ng-template>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.