关于angular js_$watch监控属性和对象详解


Posted in Javascript onApril 24, 2017

$Watch:(监听一个model,当一个model每次改变时,都会触发第二个函数)

$watch('watchFn',watchAction,deepWatch)

watchFn:带有Angular 表达式或者函数的字符串,它会返回被监控的数据模型的当前值。

watchAction: 一个函数function(newValue,oldValue){},当watchFn 发生变化时会被调用

deepWatch:默认为false,监听数组的某个元素或者对象的属性时设置为true;

监控一个属性:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8"/>
</head>
<body>
<div ng-app="myApp" ng-controller="myCtrl">
  <form>
    <div class="form-group">
      <input ng-model="name" />{{name}}
      <p>改变次数{{count}}</p>
    </div>
  </form>
</div>
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
<script type="text/javascript">
  
  var app = angular.module('myApp', []);
  app.controller('myCtrl', function ($scope){
    $scope.name = '橘子';
    $scope.count = 0;
    $scope.$watch('name', function (newValue, oldValue) {
      $scope.count++;
      if($scope.count >5){
        $scope.name = '苹果';
      }
    });
  });
</script>
</body>
</html>

监控一个对象(deepWidth为true)

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8"/>
</head>
<body>
<div ng-app="myApp" ng-controller="myCtrl">
  <form>
    <div class="form-group">
      <input ng-model="Data.name" />{{Data.name}}
      <p>改变次数{{count}}</p>
    </div>
  </form>
</div>
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
<script type="text/javascript">

  var app = angular.module('myApp', []);
  app.controller('myCtrl', function ($scope){
    $scope.Data = { name: '橘子' };
    $scope.count = 0;
    $scope.$watch('Data', function (newValue, oldValue) {
      if(newValue == oldValue)
      return;
      $scope.count++;
      if($scope.count >5){
         $scope.Data.name = '苹果';
      }
    }, true);
  });
</script>
</body>
</html>

以上这篇关于angular js_$watch监控属性和对象详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
各情景下元素宽高的获取实现代码
Sep 13 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
Jan 07 Javascript
jQuery 1.9使用$.support替代$.browser的使用方法
May 27 Javascript
AngularJS入门教程之 XMLHttpRequest实例讲解
Jul 27 Javascript
微信小程序点击控件修改样式实例详解
Jul 07 Javascript
js is_valid_filename验证文件名的函数
Jul 19 Javascript
Windows安装Node.js报错:2503、2502的解决方法
Oct 25 Javascript
解决vue 中 echart 在子组件中只显示一次的问题
Aug 07 Javascript
Vuejs学习笔记之使用指令v-model完成表单的数据双向绑定
Apr 29 Javascript
js实现翻牌小游戏
Jul 31 Javascript
关于JavaScript 中 if包含逗号表达式
Nov 27 Javascript
vue使用localStorage持久性存储实现评论列表
Apr 14 Vue.js
Javascript操作dom对象之select全面解析
Apr 24 #Javascript
Node+Express+MongoDB实现登录注册功能实例
Apr 23 #Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
Apr 23 #jQuery
基于JavaScript实现类名的添加与移除
Apr 23 #Javascript
源码分析Vue.js的监听实现教程
Apr 23 #Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
Apr 23 #Javascript
springMVC + easyui + $.ajaxFileUpload实现文件上传注意事项
Apr 23 #Javascript
You might like
php模板之Phpbean的目录结构
2008/01/10 PHP
PHP ADODB实现分页功能简单示例
2018/05/25 PHP
通过ifame指向的页面高度调整iframe的高度
2006/10/05 Javascript
ASP SQL防注入的方法
2008/12/25 Javascript
javascript 文档的编码问题解决
2009/03/01 Javascript
JAVASCRIPT实现的WEB页面跳转以及页面间传值方法
2010/05/13 Javascript
CSS和JS标签style属性对照表(方便js开发的朋友)
2010/11/11 Javascript
jQuery实现类似滑动门切换效果的层切换
2013/09/23 Javascript
javascript完美拖拽的实现方法
2013/09/29 Javascript
js截取小数点后几位的写法
2013/11/14 Javascript
Ajax请求在数据量大的时候出现超时的解决方法
2014/02/27 Javascript
基于JS实现导航条之调用网页助手小精灵的方法
2016/06/17 Javascript
nodejs加密Crypto的实例代码
2016/07/07 NodeJs
Javascript动画效果(1)
2016/10/11 Javascript
vue2.0父子组件间通信的实现方法
2017/04/19 Javascript
基于 D3.js 绘制动态进度条的实例详解
2018/02/26 Javascript
详解nodejs 配置文件处理方案
2019/01/02 NodeJs
electron实现静默打印的示例代码
2019/08/12 Javascript
Nodejs监控事件循环异常示例详解
2019/09/22 NodeJs
vue.js实现h5机器人聊天(测试版)
2020/07/16 Javascript
用Python编写一个简单的Lisp解释器的教程
2015/04/03 Python
python编程实现希尔排序
2017/04/13 Python
Python算法之图的遍历
2017/11/16 Python
Python读写docx文件的方法
2018/05/08 Python
python项目对接钉钉SDK的实现
2019/07/15 Python
python kafka 多线程消费者&amp;手动提交实例
2019/12/21 Python
python实现逢七拍腿小游戏的思路详解
2020/05/26 Python
Daisy London官网:英国最大的首饰集团IBB旗下
2019/02/28 全球购物
怀旧香味蜡烛:Homesick
2019/11/02 全球购物
C语言面试题
2015/10/30 面试题
用Python写一个for循环的例子
2016/07/19 面试题
财务分析个人的自荐书范文
2013/11/24 职场文书
电气个人求职信范文
2014/02/04 职场文书
寄语是什么意思
2014/04/10 职场文书
2014小学一年级班主任工作总结
2014/12/05 职场文书
Python如何利用正则表达式爬取网页信息及图片
2021/04/17 Python