基本Html屬性綁定css
<td [attr.colspan]="tableColspan">Something</td>
css類綁定編程
<div class="aa bb" [class]="someExpression">something</div> <div [class.special]="isSpecial">something</div> <div [ngClass]="{aaa:isA, bbb:isB}">something</div>
樣式綁定異步
<button [style.color]="isSpecial?'red':'blue'>Red</button> <div [ngStyle]="{'font-style':this.canSave?'italic':'normal'}"></div>
4.雙向綁定angular4
<input [(ngModue)]='name'>{{name}}
響應式編程 其實就是異步數據流編程觀察者模式與Rxjs
可觀察對象Observable(stream,數據生產者,可觀察對象,被觀察者):表示一組值或者事件的集合.
在可觀察對象發射數據(流)並通過操做符操做後,接着就能夠經過訂閱(subscribe)這個數據(流)而後激活以前註冊的Observable(觀察者,一組回調的集合)的回調函數拿到最終結果(完成觀察者對可觀察對象的訂閱)
訂閱Subscription:表示一個可觀察對象,主要用於取消訂閱函數
具體實例實現:this
constructor(){ Observable.from([1,2,3,4]) .filter( e => e%2 == 0) .map( e => e*e ) .subscribe( e => console.log(e) ) } // debounce是空閒時間的間隔控制
<p>The hero's birthday is {{ birthday | date }}</p> // birthday | date 部分的date就是一個實例管道
The chained hero's birthday is {{ birthday | date | uppercase}} //鏈式管道就是在變量後面連接多個pipe
{{ birthday | date: *FullDate* }}
@Pipe({name: 'exponentialStrength'}) export class ExponentialStrengthPipe implements PipeTransform { transform(value: number, exponent: string): number { let exp = parseFloat(exponent); return Math.pow(value, isNaN(exp) ? 1 : exp); } }
值變化或者對象引用發生變化的時候,纔會執行管道。spa
速度超慢,深度檢測,會頻繁檢測。pure設爲false。雙向綁定