angularjs – 如何将一些数据从一个控制器传递到另一个控制器[重复]

前端之家收集整理的这篇文章主要介绍了angularjs – 如何将一些数据从一个控制器传递到另一个控制器[重复]前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > AngularJS: How can I pass variables between controllers?15个答案我有以下两个对等控制器。这些没有父母:
<div data-ng-controller="Controller1">

</div>

<div data-ng-controller="Controller2">
   The value of xxx is: {{ xxx }}
</div>

angular.module('test')
   .controller('QuestionsStatusController1',['$rootScope','$scope'
    function ($rootScope,$scope) {
    // How can I set the value of xxx in the HTML that's part of Controller2    
    }]);

angular.module('test')
   .controller('QuestionsStatusController2','$scope',function ($rootScope,$scope) {
    }]);

在控制器1中,我想更新由Controller2控制的HTML中的变量xxx的值。有没有办法可以做到这一点?

绝对使用服务在控制器之间共享数据,这是一个工作示例。
$ broadcast不是要走的路,你应该避免在有更合适的方式时使用事件系统。使用’service’,’value’或’constant'(对于全局常量)。

http://plnkr.co/edit/ETWU7d0O8Kaz6qpFP5Hp

以下是输入示例,您可以在页面上看到数据镜像:
http://plnkr.co/edit/DbBp60AgfbmGpgvwtnpU

var testModule = angular.module('testmodule',[]);

testModule
   .controller('QuestionsStatusController1','myservice',$scope,myservice) {
       $scope.myservice = myservice;   
    }]);

testModule
   .controller('QuestionsStatusController2',myservice) {
      $scope.myservice = myservice;
    }]);

testModule
    .service('myservice',function() {
      this.xxx = "yyy";
    });
原文链接:https://www.f2er.com/angularjs/143903.html

猜你在找的Angularjs相关文章