gpt4 book ai didi

javascript - 获取请求后的空数组(AngularJS)

转载 作者:行者123 更新时间:2023-11-30 16:03:21 26 4
gpt4 key购买 nike

在我的示例中,当我发送 GET 请求以获取包含数据的响应数组时,我在 firefox 的控制台中看到该数组为空。我不知道错误在哪里。 enter image description here

这是我的代码:

//Controller:
$scope.changeDate = function (selFrom) {
vm.repos = CrudService.getRepoByDay(selFrom);
}


//Service (CrudService):
function CrudService(ResService) {
var service = {
getRepoByDay: getRepoByDay
};

return service;

function getRepoByDay(selTo) {
return ResourceService.test.query(
{ endDate: selTo },
successResponse,
errorResponse
);
}

function successResponse(response) {
return response;
}
}

//Service (ResService)
test: $resource(baseUrl + '/api/repodates', {
endDate: '@EndDate'
}, {})

//View
<tbody>
<tr ng-repeat="report in rc.repos>
<td ng-repeat="(key, value) in report">
{{ value }}
</td>
</tr>
</tbody>

有人知道我必须做什么吗?

最佳答案

$resource 是异步的,你必须在 promise 的回调中处理它:

return ResourceService.test.query(
{ endDate: selTo }
);

CrudService.getRepoByDay(selFrom).$promise.then(function(data){
vm.repos = data;
console.log(data);//log here not ouside the callback to check
});

使用 $q 编辑示例:

var deferred = $q.defer();
ResourceService.test.query(
{ endDate: selTo }
).$promise.then(
function(data){deferred.resolve(data);},
function(rejection){deferred.reject(rejection);}
);
return deferred.promise;

关于javascript - 获取请求后的空数组(AngularJS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37379704/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com