angular 頁面調用 $rootScope 變量

  你們都知道 $rootScope 是全局做用域,保存到此做用域的變量,全部該模塊的控制器局部做用域下都能訪問到,那麼問題來了,若是全局做用域的變量名與局部做用域的名稱同樣,那麼該如何區分調用呢???html

  方法仍是很簡單的:調用全局做用的變量,只須要在變量前加 $root 便可。app

<!DOCTYPE html>
<html ng-app='myApp'>
    <head>
        <meta charset='utf-8'>
        <script src='angular.js'></script>
    </head>
    <body>
        <div ng-controller='myCtrl1'>
            <div>myCtrl1 : {{name}}</div>
            <div>myCtrl1 : {{$root.name}}</div>
        </div>
        <div ng-controller='myCtrl2'>
            <div>myCtrl2 : {{name}}</div>
        </div>
        <script>
            var app = angular.module("myApp",[])
            app.controller("myCtrl1",function($scope, $rootScope){
                $scope.name = 'scope';
            })
            app.controller("myCtrl2",function($scope, $rootScope){
                $rootScope.name = 'rootScope';
            })
        </script>
    </body>
</html>

  不過通常爲了防止衝突的變量名,全局做用域下的變量名稱起的通常都有惟一性,因此調用時能夠直接插值 : {{變量名}} 來調用。spa

相關文章
相關標籤/搜索