Come avrei più casi in una *ngIf
dichiarazione? Sono abituato a Vue o Angular 1 con un if
, else if
e else
, ma sembra che Angular 4 abbia solo una condizione true
( if
) e false
( else
).
Secondo la documentazione, posso solo fare:
<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>
Ma voglio avere più condizioni (qualcosa di simile):
<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>
Ma finisco per dover usare ngSwitch
, che sembra un hack:
<ng-container [ngSwitch]="true">
<div *ngSwitchCase="foo === 1">First</div>
<div *ngSwitchCase="bar === 2">Second</div>
<div *ngSwitchDefault>Third</div>
</ng-container>
In alternativa, sembra che molte delle sintassi a cui mi sono abituato da Angular 1 e Vue non siano supportate in Angular 4, quindi quale sarebbe il modo consigliato per strutturare il mio codice con condizioni come questa?