angular2 模型數(shù)據(jù)更新了,需要監(jiān)聽(tīng)數(shù)據(jù)改變,
一、實(shí)現(xiàn)接口Docheck,檢測(cè)頁(yè)面上所有元素?cái)?shù)據(jù)更新
import { Component, DoCheck } from "@angular/core";export class LangListUserComponent implements DoCheck {constructor(private differs: KeyValueDiffers) {}ngOnInit() { this.objDiffer = {}; this.list.forEach((elt) => {  this.objDiffer[elt] = this.differs.find(elt).create(null); });}ngDoCheck() { this.list.forEach(elt => {  var objDiffer = this.objDiffer[elt];  var objChanges = objDiffer.diff(elt);  if (objChanges) {   objChanges.forEachChangedItem((elt) => {    if (elt.key === 'prop1') {     this.doSomethingIfProp1Change();    }   });  } });}二、針對(duì)頁(yè)面上某個(gè)元素的數(shù)據(jù)更新做處理
1、定義模板驅(qū)動(dòng)表單名
<input type="text" pInputText size="50" [formControl]="term" placeholder="輸入搜索條件">
2、ts 文件中新建一個(gè)表單元素對(duì)象。
colo = new FormControl();
3、ngonInit中訂閱數(shù)據(jù)更新
this.colo.valueChanges.distinctUntilChanged().subscribe((ast) => {//do something})以上這篇Angular2中監(jiān)聽(tīng)數(shù)據(jù)更新的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持錯(cuò)新站長(zhǎng)站。
新聞熱點(diǎn)
疑難解答
圖片精選