调用函数或将数据传递到另一个控制器AngularJS

马修斯·赫尔南德斯(Matheus Hernandes)

我似乎已经遇到过此类问题的其他话题,但是没有人可以帮助我...所以这是我的问题:

我有一个带有搜索按钮的导航栏,此按钮向Web服务发出请求并从中获取请求,并返回一个json对象,该对象必须用于填充表格列表。问题是,我的按钮和表位于单独的控制器中,并且确实按预期运行。

var app = angular.module('clientRest', []).controller('lista', ['$scope', 'loadLista', function($scope, loadLista) {
    $scope.contatos = loadLista.getContatos();
}]).controller('pesquisa', ['$scope', '$http', 'loadLista', function($scope, $http, loadLista) {
    $scope.listar = function() {
        $http.get("http://localhost/wsRest/index.php/contato").success(function(response) {
            loadLista.setContatos(response);
        });
    };
}]).service('loadLista', function() {
    var contatos = [];
    return {
        getContatos: function() {
            return contatos;
        },
        setContatos: function(c) {
            contatos = c;
        }
    };
});

我的代码...当我listar()从pesquisa控制器调用时,我需要将接收到的数据从lista控制器发送到$ scope.contatos,以使我的ng-repeat正常工作,所有这些都只需单击一下即可。

我该怎么做?

感谢大家

巴尔加夫·波纳帕利(Bhargav Ponnapalli)

设置变量时,请使用$ rootScope。$ emit发出更改事件,并使用$ on在lista控制器中获取值。我在这里使用customListAr只是为了演示按钮单击。这有帮助吗?

var app = angular.module('clientRest', [])
  .controller('lista', ['$scope', 'loadLista', '$rootScope',
    function($scope, loadLista, $rootScope) {
      console.log(loadLista);
      $scope.contatos = loadLista.getContatos();
      $rootScope.$on('change', function() {
        $scope.contatos = loadLista.getContatos();

      });
    }
  ])
  .controller('pesquisa', ['$scope', '$http', 'loadLista',
    function($scope, $http, loadLista) {
      $scope.listar = function() {
        $http.get("http://localhost/wsRest/index.php/contato").success(function(response) {
          loadLista.setContatos(response);
        });

      };

      $scope.customListAr = function() {
        loadLista.setContatos(["item 1" , "item 2", "item 3"]);
      }
    }
  ])
  .service('loadLista', ['$rootScope',
    function($rootScope) {
      var contatos = [];
      return {
        getContatos: function() {
          return contatos;
        },
        setContatos: function(c) {
          contatos = c;
          $rootScope.$emit('change');
        }
      };
    }
  ]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="clientRest">
  <div ng-controller="lista">
    <ul>
      <li ng-repeat="a in contatos">{{a}}</li>
    </ul>
  </div>
  <div ng-controller="pesquisa">
    <button ng-click="customListAr()">Click Me</button>
  </div>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

iOS-将数据传递到另一个视图控制器

来自分类Dev

将创建的数据传递到另一个控制器

来自分类Dev

将数据传递到导航控制器中的另一个视图控制器

来自分类Dev

在我的情况下如何将数据传递到另一个控制器?

来自分类Dev

准备segue时无法将数据传递到另一个视图控制器

来自分类Dev

从AngularJS如何将数据从一个控制器+模板传递到另一个控制器+模板?

来自分类Dev

组件,在 Angularjs1.5 中绑定 - 将数据从一个控制器传递到另一个控制器

来自分类Dev

如何将标签数据传递到第二个视图控制器中的另一个标签

来自分类Dev

将数据从角度形式传递到另一个控制器

来自分类Dev

将值从一个函数传递到控制器中的另一个函数

来自分类Dev

将变量的值从控制器传递到另一个控制器

来自分类Dev

将特定数据从一个控制器传递到另一个

来自分类Dev

如何将数据从一个视图控制器传递到另一个SWIFT

来自分类Dev

似乎无法将数据从一个控制器传递到另一个

来自分类Dev

如何将数据从一个视图控制器传递到另一个SWIFT

来自分类Dev

如何将数据从一个视图控制器传递到另一个?

来自分类Dev

将模型从一个控制器传递到另一个

来自分类Dev

无法将数据从一个控制器移动和跟踪到另一个angularjs

来自分类Dev

使用Angularjs中的Factory从一个控制器到另一个控制器的调用函数

来自分类Dev

如何在angularjs中将对象数据从一个控制器传递到另一个控制器

来自分类Dev

从另一个控制器中调用一个控制器内部的函数-AngularJS

来自分类Dev

如何在 AngularJs 1.7.x 中从一个控制器调用方法到另一个控制器,以刷新 UI 数据

来自分类Dev

准备segue函数无法将数据传递到另一个VC Swift,

来自分类Dev

无法使用Segue Swift 5将数据从一个控制器传递到另一个控制器

来自分类Dev

在我的情况下,如何将数据从一个控制器传递到另一个控制器

来自分类Dev

将数据从一个控制器传递到另一个非子级或父级控制器的最佳实践?

来自分类Dev

如何在CakePHP 3中将数据从一个控制器传递到另一个控制器?

来自分类Dev

如何将脆弱数据(例如连接字符串)从一个控制器传递到另一个控制器

来自分类Dev

如何将数据从一个视图控制器传递到另一个视图控制器,并且在视图控制器之间有一个显示视图控制器

Related 相关文章

  1. 1

    iOS-将数据传递到另一个视图控制器

  2. 2

    将创建的数据传递到另一个控制器

  3. 3

    将数据传递到导航控制器中的另一个视图控制器

  4. 4

    在我的情况下如何将数据传递到另一个控制器?

  5. 5

    准备segue时无法将数据传递到另一个视图控制器

  6. 6

    从AngularJS如何将数据从一个控制器+模板传递到另一个控制器+模板?

  7. 7

    组件,在 Angularjs1.5 中绑定 - 将数据从一个控制器传递到另一个控制器

  8. 8

    如何将标签数据传递到第二个视图控制器中的另一个标签

  9. 9

    将数据从角度形式传递到另一个控制器

  10. 10

    将值从一个函数传递到控制器中的另一个函数

  11. 11

    将变量的值从控制器传递到另一个控制器

  12. 12

    将特定数据从一个控制器传递到另一个

  13. 13

    如何将数据从一个视图控制器传递到另一个SWIFT

  14. 14

    似乎无法将数据从一个控制器传递到另一个

  15. 15

    如何将数据从一个视图控制器传递到另一个SWIFT

  16. 16

    如何将数据从一个视图控制器传递到另一个?

  17. 17

    将模型从一个控制器传递到另一个

  18. 18

    无法将数据从一个控制器移动和跟踪到另一个angularjs

  19. 19

    使用Angularjs中的Factory从一个控制器到另一个控制器的调用函数

  20. 20

    如何在angularjs中将对象数据从一个控制器传递到另一个控制器

  21. 21

    从另一个控制器中调用一个控制器内部的函数-AngularJS

  22. 22

    如何在 AngularJs 1.7.x 中从一个控制器调用方法到另一个控制器,以刷新 UI 数据

  23. 23

    准备segue函数无法将数据传递到另一个VC Swift,

  24. 24

    无法使用Segue Swift 5将数据从一个控制器传递到另一个控制器

  25. 25

    在我的情况下,如何将数据从一个控制器传递到另一个控制器

  26. 26

    将数据从一个控制器传递到另一个非子级或父级控制器的最佳实践?

  27. 27

    如何在CakePHP 3中将数据从一个控制器传递到另一个控制器?

  28. 28

    如何将脆弱数据(例如连接字符串)从一个控制器传递到另一个控制器

  29. 29

    如何将数据从一个视图控制器传递到另一个视图控制器,并且在视图控制器之间有一个显示视图控制器

热门标签

归档