• angulajs 如何在controller 之间共享数据


    当在一个controller中 通过设置$scope的数据,来影响其它control的范围时,可以使用$rootScope

    举个例子:

    在一个control A范围内设置

        mainApp.controller('menuController', function($scope,$rootScope) {
            $rootScope.menus={}
            $rootScope.menus.showWelcome = false;
            $rootScope.menus.showExit = false;
            $rootScope.menus.activeHome = "active";
            $rootScope.menus.activeMystudy = "";
        });

    在另一个control B中

    mainApp.controller('homeController', function($scope) {
            $scope.menus.activeHome = "active";
            $scope.menus.activeMystudy = "";
            $scope.loginForm = {userid:"李五"};
            $scope.login = function(){
                $scope.menus.loginId = $scope.loginForm.userid;
                $scope.menus.showWelcome = true;
                $scope.menus.showExit = true;
            }
        });

    这时操作B中的元素时,A中的元素会受影响。 注意,如果B中的数据名与$rootScope中的同名时,则在B中引用时需要使用$rootScope。

    其关键的因素是,所有的应用都有一个 $rootScope,它可以作用在 ng-app 指令包含的所有 HTML 元素中。

    $rootScope 可作用于整个应用中。是各个 controller 中 scope 的桥梁。用 rootscope 定义的值,可以在各个 controller 中使用。

  • 相关阅读:
    STM32的DMA
    STM32串口接收不定长数据原理与源程序(转)
    推挽与开漏
    开关量输入检测与输出的电路设计(转)
    理解一下单片机的I2C和SPI通信
    电阻桥的作用(转)
    为什么工业上用4到20毫安电流传输数据(转)
    Keil的标题“礦ision3" 的改变(转)
    epplus动态合并列数据
    npm脚本编译代码
  • 原文地址:https://www.cnblogs.com/51kata/p/6032808.html
Copyright © 2020-2023  润新知