1. 程式人生 > >angularjs中scope與rootscope 區別

angularjs中scope與rootscope 區別

scope是html和單個controller之間的橋樑,資料繫結就靠他了。rootscope是各個controller中scope的橋樑。用rootscope定義的值,可以在各個controller中使用。下面用例項詳細的說明一下。

1,js程式碼

 程式碼如下 複製程式碼

phonecatApp.controller('TestCtrl',['$scope','$rootScope',
function($scope,$rootScope) {
$rootScope.name = 'this is test';
}
]);

phonecatApp.controller('Test111Ctrl',['$scope','$rootScope',
function($scope,$rootScope) {
$scope.name = $rootScope.name;
}
]);

2,html程式碼

 程式碼如下 複製程式碼

<div ng-controller="TestCtrl">
Iset the global variable.<strong>{{$root.name}}</strong>
</div>

<div ng-controller="Test111Ctrl">
1,get global variable .<strong>{{name}}</strong><br>
2,get global variable .<strong>{{$root.name}}</strong>
</div>www.111cn.net

3,顯示結果

 程式碼如下 複製程式碼

I set the global variable.this is test
1,get global variable .this is test
2,get global variable .this is test

由結果可以看出來,$rootScope.name設定的變數,在所有controller裡面都是可以直接用{{$root.name}}來顯示的,很強大。那當然也可以賦值給scope.