0

我想使用工厂从服务器获取数据,然后返回一个包含该数据的对象:

我的数据位于相对于 index.html 的以下文件夹 data/es/20130709.json 中。

数据(20130709.json)格式如下:

{
   "data": [
           {"price": 1593.00, "volume": 385},
           {"price": 1593.00, "volume": 385},
           {"price": 1593.00, "volume": 385}
           ]
}

获取此数据并让工厂函数返回包含此数据的对象的最佳方法是什么。

谢谢你。

4

1 回答 1

1
angular.module("myModule", []).service("myService", function($http){
    var service = {   data:[],
                      getData:function(){
                          $http.get("data/es/20130709.json").success(function(returnedData){service.data = returnedData});
                      }
                  };
    service.getData(); //calling to populate data as soon as possible

    return service;
}).controller("MyCtrl", function($scope, myService){
    $scope.scopeData = {};
    $scope.$watch( function () { return myService.data; }, function ( data ) {
      // handle it here. e.g.:
      $scope.scopeData = data;
    });
});

的HTML

<body ng-app="myModule">
    <div ng-controller="MyCtrl"></div>
</body> 

还有一个提琴手:http: //jsfiddle.net/5HayJ/

于 2013-07-09T18:31:34.983 回答