0%

angular note

当调用$digest的时候,只触发当前作用域和它的子作用域上的监控,但是当调用$apply的时候,会触发作用域树上的所有监控

1
2
3
$scope.$watch("arr", function(newValue) {
alert("deep:" + newValue.join(","));
}, true);

注意,这里我们在$watch函数中,添加了第三个参数,这个参数用于指示对数据的深层监控,包括数组的子元素和对象的属性等等,本例如果没有第三个参数只会监听整个arr数组的变化,而不会监听到数组内部的子元素的变化。

1
2
3
4
angular.element(document).ready(function(){
angular.bootstrap(document.getElementById('app1'),['test']);
angular.bootstrap(document.getElementById('app2'),['test']);
})
1
2
3
4
5
6
<div id="app1" ng-controller='testctrl'>
{{x}}
</div>
<div id="app2" ng-controller='testctrl'>
{{x}}
</div>

这样在同一个页面创建同一个module的不同实例,互不干涉