我可以将$ http.get中的值传递给AngularJS中的其他函数

时间:2015-08-06 01:45:50

标签: javascript angularjs

我正在努力学习AngularJS,我想知道我是否可以这样做?: 这是我的代码:

(function() {
    function InfoController($scope,$element){
        $scope.items = data['data']; //data in Option controller
    }
    function OptionController($scope,$element,$http){
        $element.find(".list-group-item").click(function() {
          var a = $(this).text();
            $http({
                url: 'hand',
                method: "GET",
                params: {a: a},
            }).success(function(data){
               console.log(data['data'][0]);
            });
        });
    }
    angular.module('testModule', [])
        .controller('InfoController', InfoController)
        .controller('OptionController', OptionController);
})();

我是AngularJS的新手,我不知道如何将值数据['data']从OptionController中的$ http.get传递给InfoController,所以请告诉我该怎么做:)

1 个答案:

答案 0 :(得分:3)

是的,您可以使用service docs

进行此操作
app.service('dataService', function(http) {
  this.data;
  var self = this;

  this.getData = function() {
      return $http.get('/data').then(function(resp) {
        self.data = resp.data;
        return self.data
      })
  }
然后,您将dataService传递给两个控制器

$scope.data = dataService.getData()