Як я маю кілька випадків у *ngIf
заяві? Я звик до Vue або кутовим 1 з наявністю if
, else if
і else
, але, схоже кутовим 4 має тільки true
( if
) і false
( else
) стан.
Згідно з документацією, я можу робити лише:
<ng-container *ngIf="foo === 1; then first else second"></ng-container>
<ng-template #first>First</ng-template>
<ng-template #second>Second</ng-template>
<ng-template #third>Third</ng-template>
Але я хочу мати кілька умов (щось на зразок):
<ng-container *ngIf="foo === 1; then first; foo === 2; then second else third"></ng-container>
<ng-template #first>First</ng-template>
<ng-template #second>Second</ng-template>
<ng-template #third>Third</ng-template>
Але мені в кінцевому підсумку доводиться використовувати ngSwitch
, що відчуває себе як хак:
<ng-container [ngSwitch]="true">
<div *ngSwitchCase="foo === 1">First</div>
<div *ngSwitchCase="bar === 2">Second</div>
<div *ngSwitchDefault>Third</div>
</ng-container>
З іншого боку, здається, що багато синтаксисів, до яких я звик з Angular 1 та Vue, не підтримуються в Angular 4, тож яким буде рекомендований спосіб структурувати мій код за таких умов?