angular的脏检查是检查了scope上属性对象的所有属性,还是只是检查与view绑定的属性?

比如scope上有一个对象有很多个属性,甚至嵌套了很多个对象,但是与view绑定的属性只有很少一部分,这种情况下我对angularjs进行脏值检查时产生了如题的疑惑。。。

慕勒3428872
浏览 566回答 1
1回答

慕田峪9158850

看个例子,<div&nbsp;ng-controller="MainCtrl"> &nbsp;&nbsp;{{a}} </div> angular.module('app',&nbsp;[]) &nbsp;&nbsp;.controller('MainCtrl',&nbsp;function($scope)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;$scope.a&nbsp;=&nbsp;'aaa'; &nbsp;&nbsp;&nbsp;&nbsp;$scope.b&nbsp;=&nbsp;'bbb'; &nbsp;&nbsp;&nbsp;&nbsp;console.log($scope); &nbsp;&nbsp;});看下scope的结构里面$$watchersCount表示脏值检测时需要处理的数据个数,如果我们把b也添加到页面上<div&nbsp;ng-controller="MainCtrl"> &nbsp;&nbsp;{{a}}&nbsp;{{b}}</div>再次打印scope,会发现$watchersCount变为2了。脏值检测只会检测绑定的属性
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript