# Angular Control Flow --- #### `@if` ```html
@if( win() ) {
You win
} @else if( lose() ) {
You lose
} @else {
Draw
}
``` --- #### `@for` ```typescript items = signal([ {title: 'one', id: 1}, {title: 'two', id: 2}, {title: 'three', id: 3}, {title: 'four', id: 4} ]) ``` ```angular181html @for(item of items(); track item.id) {
{{ item.title }}
} ```
track
muss ein Ausdruck folgen, welcher für jedes item unique ist
track $index
einfach solang keine Neuordnung
---- ```angular181html @for(item of items; track $index) { {{ $index }}: {{ item }} } @empty {
Please add some items
} ``` ```text $count => items.length ``` ```text $first => $index === 0 ``` ```text $last => $index === $count - 1 ``` ```text $even => $index % 2 === 0 ``` ```text $odd => !$even ``` --- #### `@switch` ```angular181html @switch (state()) { @case ('login') {
} @case ('shop') {
} @case ('admin') { @if (isAdmin(user)) {
} } @default {
} } ```