• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >JavaScript > 浅谈Angular.js中使用$watch监听模型变化

浅谈Angular.js中使用$watch监听模型变化

作者:袁克强 字体:[增加 减小] 来源:互联网 时间:2017-05-11

袁克强通过本文主要向大家介绍了angular js watch,angular watch,angular.js视频教程,angular.js,angular.js下载等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

$watch简单使用

$watch是一个scope函数,用于监听模型变化,当你的模型部分发生变化时它会通知你。

$watch(watchExpression, listener, objectEquality);
</div>

每个参数的说明如下:

  • watchExpression:监听的对象,它可以是一个angular表达式如'name',或函数如function(){return $scope.name}。
  • listener:当watchExpression变化时会被调用的函数或者表达式,它接收3个参数:newValue(新值), oldValue(旧值), scope(作用域的引用)
  • objectEquality:是否深度监听,如果设置为true,它告诉Angular检查所监控的对象中每一个属性的变化. 如果你希望监控数组的个别元素或者对象的属性而不是一个普通的值, 那么你应该使用它

举个栗子:

$scope.name = 'hello';

var watch = $scope.$watch('name',function(newValue,oldValue, scope){

    console.log(newValue);

    console.log(oldValue);

});

$timeout(function(){

    $scope.name = "world";

},1000);
</div>

$watch性能问题

太多的$watch将会导致性能问题,$watch如果不再使用,我们最好将其释放掉。

$watch函数返回一个注销监听的函数,如果我们想监控一个属性,然后在稍后注销它,可以使用下面的方式:

var watch = $scope.$watch('someModel.someProperty', callback);

//...

watch();
</div>

还有2个和$watch相关的函数:

$watchGroup(watchExpressions, listener);

$watchCollection(obj, listener);
</div>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Angular中使用$watch监听object属性值的变化(详解)
  • 关于angular js_$watch监控属性和对象详解
  • 浅谈Angular.js中使用$watch监听模型变化

相关文章

  • 2017-05-11在node.js中怎么屏蔽掉favicon.ico的请求
  • 2017-05-11js操作浏览器的参数方法
  • 2017-05-11微信小程序实战之自定义toast(6)
  • 2017-05-11Bootstrap table右键功能实现方法
  • 2017-05-11jQuery实现弹出窗口弹出div层的实例代码
  • 2017-05-11JavaScript Canvas绘制圆形时钟效果
  • 2017-05-11原生js实现可拖拽效果
  • 2017-05-11微信小程序 实现列表项滑动显示删除按钮的功能
  • 2017-05-11jQuery extend()详解及简单实例
  • 2017-05-11nodejs服务搭建教程 nodejs访问本地站点文件

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 利用jQuery解析获取JSON数据
    • vuejs如何配置less
    • js获取元素下的第一级子元素的方法(推荐)
    • jQuery在header中设置请求信息的方法
    • JavaScript基于replace+正则实现ES6的字符串模版功能
    • javascript获取以及设置光标位置
    • js 博客内容进度插件详解
    • 利用transition实现文字上下抖动的效果
    • js实现漫天星星效果
    • 理解javascript中的Function.prototype.bind的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有