Angular2中监听数据更新的方法


Posted in Javascript onAugust 31, 2018

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中监听数据更新的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript delete 使用示例代码
Mar 29 Javascript
jquery实现加载等待效果示例
Sep 25 Javascript
js实现图片拖动改变顺序附图
May 13 Javascript
JavaScript中调用函数的4种方式代码实例
Jul 08 Javascript
vuejs响应用户事件(如点击事件)
Mar 14 Javascript
JS和jQuery通过this获取html标签中的属性值(实例代码)
Sep 11 jQuery
vue中使用vue-router切换页面时滚动条自动滚动到顶部的方法
Nov 28 Javascript
微信小程序实现action-sheet弹出底部菜单功能【附源码下载】
Dec 09 Javascript
使用JavaScript中的lodash编写双色球效果
Jun 24 Javascript
解决cordova+vue 项目打包成APK应用遇到的问题
May 10 Javascript
在vue项目中引用Antv G2,以饼图为例讲解
Oct 28 Javascript
vuex页面刷新导致数据丢失的解决方案
Dec 10 Vue.js
JavaScript使用prototype原型实现的封装继承多态示例
Aug 31 #Javascript
angular2组件中定时刷新并清除定时器的实例讲解
Aug 31 #Javascript
解决Angular4项目部署到服务器上刷新404的问题
Aug 31 #Javascript
Vue.directive使用注意(小结)
Aug 31 #Javascript
解决angular2 获取到的数据无法实时更新的问题
Aug 31 #Javascript
vue 项目中使用Loading组件的示例代码
Aug 31 #Javascript
解决Angular2 router.navigate刷新页面的问题
Aug 31 #Javascript
You might like
怎样在UNIX系统下安装php3
2006/10/09 PHP
php中url函数介绍及使用示例
2014/02/13 PHP
PHP中使用php://input处理相同name值的表单数据
2015/02/03 PHP
lnmp安装多版本PHP共存的方法详解
2018/08/02 PHP
JavaScript实现把数字转换成中文
2015/06/29 Javascript
jQuery 弹出层插件(推荐)
2016/05/24 Javascript
基于JS快速实现导航下拉菜单动画效果附源码下载
2016/10/27 Javascript
BootStrap学习系列之布局组件(下拉,按钮组[toolbar],上拉)
2017/01/03 Javascript
node.js实现的装饰者模式示例
2017/09/06 Javascript
JavaScript实现图片本地预览功能【不用上传至服务器】
2017/09/20 Javascript
基于axios封装fetch方法及调用实例
2018/02/05 Javascript
javascript回调函数详解
2018/02/06 Javascript
vue 使用eventBus实现同级组件的通讯
2018/03/02 Javascript
详解vue3.0 的 Composition API 的一种使用方法
2020/10/26 Javascript
在Windows系统上搭建Nginx+Python+MySQL环境的教程
2015/12/25 Python
Python判断变量是否为Json格式的字符串示例
2017/05/03 Python
centos6.4下python3.6.1安装教程
2017/07/21 Python
Python多线程threading和multiprocessing模块实例解析
2018/01/29 Python
用python写测试数据文件过程解析
2019/09/25 Python
Django REST Swagger实现指定api参数
2020/07/07 Python
Zavvi美国:英国娱乐之家
2017/03/19 全球购物
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
请写出char *p与"零值"比较的if语句
2014/09/24 面试题
仓库文员岗位职责
2014/04/06 职场文书
六年级学生评语
2014/04/22 职场文书
学生评语集锦
2015/01/04 职场文书
辞职信格式模板
2015/02/27 职场文书
自主招生推荐信怎么写
2015/03/26 职场文书
2015年宣传思想工作总结
2015/05/22 职场文书
老人与海读书笔记
2015/06/26 职场文书
2016年敬老月活动总结
2016/04/05 职场文书
又涨知识了,自律到底多重要?
2019/06/27 职场文书
tensorflow+k-means聚类简单实现猫狗图像分类的方法
2021/04/28 Python
Spring mvc是如何实现与数据库的前后端的连接操作的?
2021/06/30 Java/Android
剑指Offer之Java算法习题精讲二叉树的构造和遍历
2022/03/21 Java/Android
python manim实现排序算法动画示例
2022/08/14 Python