angularJS的$watch失效问题的解决方案
来源:互联网 发布:黑马程序员52期百度云 编辑:程序博客网 时间:2024/06/06 05:43
$watch方法,它可以帮助我们在每个scope中监视其中的变量。
$watch 单一的变量
对于普通的变量时,如数字,字符串等,直接如下写是可以监视到变量的变化,并执行相应的函数的。
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
$watch 多个变量
对于多个变量的监视变化,执行同一函数的话,可以将这几个变量转为字符串,以‘+’号隔开来进行监视
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
$watch对象或数组
发现用上面两种方法去监视数组时,会发现即使数组的内容改变了,也没有触发到这个匿名函数。之后发现
当第三个参数是false时,其实
解决办法,就是在后面添加第三个参数为true就好(当然,也可以将这监听返回结果为JSON字符串形式的该对象或数组的的匿名函数。)
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
或者将监听返回结果为JSON字符串形式的该对象或数组的的匿名函数
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
$watch 函数的返回结果
在写代码的时候,有时会遇到要监视一个函数返回的结果是否变化的情况,所以查了一下$watch 监视函数的情况。
方法1:监视对象为“函数名()”的字符串,记得加“()”!
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
方法2:在监视对象中设置为匿名函数,返回要监视的函数的返回值(绕晕了…)
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
取消$watch
至于怎么取消了…查了好久才找到的
其实每个
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
所以啊,要取消watch的话,一开始将$watch的返回值保存就好啦,要取消watch的时候,在调用。
- angularJS的$watch失效问题的解决方案
- angularJS的$watch失效问题的解决方案
- angularjs $scope.$watch 遇到的问题
- AngularJS $watch的用法
- 解决Karaf控制台dev:watch失效的问题
- $watch--angularJs的监听事件
- angularjs的$watch、$watchGroup、$watchCollection
- angularjs $watch ng-include 中的变量引发的问题
- angularjs的$watch、$watchGroup、$watchCollection的区别
- Error: watch ENOSPC 的解决方案
- angularJS使用$watch监控数据模型的变化
- Angularjs实践之优化你的$watch
- angularJS<六、$scope里的$watch方法>
- angularjs的$watch、$watchGroup、$watchCollection使用方式
- 【AngularJS】释放多余的$watch检测函数
- angularJS<$scope里的$watch方法>
- angularJS中$watch监听不到输入控件(input、textarea)的空格输入问题
- “Form_Load时添加的AsyncPostBackTrigger失效”问题分析及解决方案
- 通过Eclipse的Git插件维护GitHub上的代码
- UI06-UIView视图层次关系
- centos 安装nginx与ftp
- Android高德地图如何让所有的轨迹在屏幕范围内都显示出来.
- Settings源码分析
- angularJS的$watch失效问题的解决方案
- 小程找工作之->c语言的运算符
- winfrom 程序打包成一个exe(伪绿色版)
- 用文件操作实现的通讯录
- x:Key的用法
- LeetCode 206. Reverse Linked List
- Oracle的Sql语句一些知识点(1)
- day7数组以及冒泡排序
- Serverless 是什么?又不是什么?