####Controlling Rendering HTML
- ngIf
- ngSwitch
- ngFor
- Pipes
- Creating Custom Pipes
- ngClass
<div [hidden]="courses.length == 0"></div>
<div *ngIf="courses.length > 0"></div>
<div [ngSwitch]="viewMode">
<template [ngSwitchWhen]="'map'" ngSwitchDefault>
...
</template>
<template [ngSwitchWhen]="'list'">
...
</template>
</div>
{{ course.title | uppercase }} -> ANGULAR COURSE
{{ course.students | number }} -> 1,234
{{ course.rating | number:’2.2-2’ }} -> 04.97
{{ course.price | currency:’USD’:true }} -> $99.95
{{ course.releaseDate | date:’MMM yyyy’ }} -> Mar 2016
{{ course | json }}
import {Pipe, PipeTransform} from ‘angular2/core’;
@Pipe({ name: ‘summary’ })
export class SummaryPipe implements PipeTransform {
transform(value: string, args: string[]) {
}
}
In the host component
@Component({
pipes: [SummaryPipe]
})
<i [ngClass]=“{
active: isActive,
disabled: isDisabled
}”></i>
<button
[ngStyle]=“{
backgroundColor: canSave ? ‘blue’: ‘gray’,
color: canSave ? ‘white’ : ‘black’
}”></button>
{{ task.assignee?.role?.name }}
<ng-content></ng-content>
Multiple content placeholders
<ng-content select=“.heading”></ng-content>
<ng-content select=“.body”></ng-content>