欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Angular2中监听数据更新的方法

程序员文章站 2022-10-15 07:53:07
angular2 模型数据更新了,需要监听数据改变, 一、实现接口docheck,检测页面上所有元素数据更新 import { component, doche...

angular2 模型数据更新了,需要监听数据改变,

一、实现接口docheck,检测页面上所有元素数据更新

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();
    }
   });
  }
 });
}

二、针对页面上某个元素的数据更新做处理

1、定义模板驱动表单名

<input type="text" pinputtext size="50" [formcontrol]="term" placeholder="输入搜索条件">

2、ts 文件中新建一个表单元素对象。

colo = new formcontrol();

3、ngoninit中订阅数据更新

this.colo.valuechanges.distinctuntilchanged().subscribe((ast) => {
//do something
})

以上这篇angular2中监听数据更新的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。