angularjs restangular没有得到数据

时间:2014-10-15 21:06:58

标签: javascript angularjs restangular

我正在尝试重新开始工作。在我的API(使用终点/用户)中,我得到了这个json响应:

{
"error": false,
"response": {
    "totalcount": 2,
    "records": [{
        "id": "1",
        "groupId": "14",
        "fullName": "Mark Smith ",
    }, {
        "id": "2",
        "groupId": "14",
        "fullName": "Joe Andrews",
    }]
}

}

我在我的服务中使用它:

$scope.projects = Restangular.all('user').getList();
console.log($scope.projects);

这是html:

 <li ng-repeat="project in projects>  
     {{project.groupId}} {{project.fullName}} 
</li>

我没有收到任何数据。

如何访问response:{totalcount:2, records: [{...}]中的数据以及records:[{...}]中的数据?

我的功夫还不足以让它发挥作用。

关于我做错什么的任何想法?

3 个答案:

答案 0 :(得分:0)

getList返回一个承诺。这就是你应该像这样使用它的原因:

Restangular.all('user').getList().then(function(data) {
    $scope.projects = data;
});

答案 1 :(得分:0)

或者(在$scope内设置then()变量),您可以这样做:

$scope.projects = Restangular.all('user').getList().$object;

返回承诺并为您解包。

答案 2 :(得分:0)

看起来你的实际回应已经包好了。在这种情况下,您需要查看文档的这一部分:Restangular Wrapped Response。您需要使用addResponseInterceptor来确保它返回正确的数据。