条件を設定するのではなくコードを改善しようとしているので、タイプ (文字列または templateRef) に応じてタブのタイトルを出力するのに役立つディレクティブまたは可能であればパイプを作成することにしました。私のコードは次のとおりです。 、このコードは私の 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;
}
どうもありがとう :)