zoukankan      html  css  js  c++  java
  • Part 37 Difference between $scope and $rootScope

    In this video we will discuss the difference between $scope and $rootScope. The main difference is that, $rootScope is available globally (for all controllers), whereas $scope is only available to the controller that has created it and it's children. 



    Let us understand this with an example.

    Controller Code : We have 2 controllers (redColourController & greenColourController). redColourController has set redColour property on $scope and rootScopeColour on $rootScope. This means redColour property cannot be used outside the redColourController, where as rootScopeColour that is set on $rootScope can be used anywhere. greenColourController has set greenColour property on $scope. This means greenColour property cannot be used outside the greenColourController

    var app = angular
                .module("Demo", [])
                .controller("redColourController", function ($scope, $rootScope) {
                    $rootScope.rootScopeColour = "I am Root Scope Colour";
                    $scope.redColour = "I am Red Colour";
                })
                .controller("greenColourController", function ($scope) {
                    $scope.greenColour = "I am Green Colour";
                })


    View HTML : 

    <div ng-controller="redColourController">
        Root Scope Colour : {{rootScopeColour}} <br />
        Red Colour Controller : {{redColour}} <br />
        Green Colour Controller :
        <span style="color:red" ng-show="greenColour == undefined">
            greenColour is undefined
        </span>
    </div>
     
    <br />
     
    <div ng-controller="greenColourController">
        Root Scope Colour : {{rootScopeColour}} <br />
        Green Colour Controller : {{greenColour}} <br />
        Red Colour Controller :
        <span style="color:red" ng-show="redColour == undefined">
            redColour is undefined
        </span>
    </div>


    Output : From the output it is clear that the rootScopeColour property that is set on $rootScope is available for both the controllers (redColourController & greenColourController). Where as redColour property set on $scope is available only for redColourController and not for greenColourController. Similarly, greenColour property set $scope is available only for greenColourController and not redColourController. Hope this example has made the difference between $rootScope and $scope clear. 

  • 相关阅读:
    vs 2012,vs 2013问题系列
    nodejs入门
    在win7下,部署asp.net MVC 4项目到iis
    cookie和session机制区别与联系
    在Asp.net项目中禁止浏览器缓存页面
    2021年01月17日微博热搜汇总
    2021年01月16日微博热搜汇总
    2021年01月15日微博热搜汇总
    2021年01月14日微博热搜汇总
    2021年01月13日微博热搜汇总
  • 原文地址:https://www.cnblogs.com/gester/p/6535463.html
Copyright © 2011-2022 走看看