我正在尝试改进我的代码而不是有条件,所以我决定创建一个指令或可能的话创建一个管道,这可以帮助我根据其类型(字符串或模板引用)打印选项卡的标题,我的代码如下,此代码用于我的 Tabs/Tab 组件,也用于我的 Stepper/step 组件,所以我相信创建可重用的东西会很棒。我试过用 ElementRef、Renderer2、ViewContainerRef、TemplateRef 来做这件事……但我没有成功。
<ng-container *ngIf="tab.isLabelTemplate">
<ng-container *ngTemplateOutlet="tab.title">
</ng-container>
</ng-container>
<ng-container *ngIf="!tab.isLabelTemplate">{{ tab.title }}</ng-container>
isLabelTemplate 看起来像这样:
get isLabelTemplate(): boolean {
return this.title instanceof TemplateRef;
}
非常感谢 :)