3

我有一个服务

angular.module('AigServices', ['ngResource']).factory('aiguilleurs', function($resource){

var service = $resource('app/data/EpargneATermeRachetableCELI.json', {}, {
    query: {method:'GET', params:{}, isArray:true}});

return service;  });

在我的控制器中,当我打电话时aiguilleurs.query(),我收到了结构,但没有像文档中所说的那样数据。我想有数据很快我打电话给query(). 任何想法?我环顾四周,没有发现任何东西。所以控制器代码如下($scope.listeAiguilleurs[0]始终未定义):

$scope.listeAiguilleurs = aiguilleurs.query();   
var questionEnCours = null;

if ($scope.listeAiguilleurs[0] != null) {
    questionEnCours = $scope.listeAiguilleurs[0].questions[$scope.noQuestionEnCours-1];
}
$scope.questionEnCours = questionEnCours;
4

1 回答 1

2

那是因为查询返回一个promise. 您可以在此处阅读更多相关信息。您必须将回调传递给该函数(在此处查看信用卡资源示例)。尝试这个:

$scope.listeAiguilleurs = aiguilleurs.query(function () {   
    var questionEnCours = null;

    if ($scope.listeAiguilleurs[0] != null) {
        questionEnCours = $scope.listeAiguilleurs[0].questions[$scope.noQuestionEnCours-1];
    }
    $scope.questionEnCours = questionEnCours;
});
于 2012-10-18T21:12:45.237 回答