ngResource
액션 호출의 비동기 결과를 for 루프에 배열 요소에 할당하려고합니다.AngularJS : for 루프의 배열 요소에 비동기 데이터 할당
for (var i = 0; i < projs.length; i++) {
$scope.projets[i].redacteur = new Object(); // the Object where the result will be stored
var param = new Object();
param.email = projs[i].redacteurEmail;
Agent.read(param, function(data) {
$scope.projets[i].redacteur = data;
});
}
문제는 (데이터가 수신되는 경우) 콜백 함수가 실행될 때, i
가 경계 (그것은 마지막 i++
통과). 그런 다음 수신 된 데이터가 존재하지 않는 오브젝트에 지정됩니다.
이 문제에 대한 해결책이 궁금하십니까?
가능한 중복 (http://stackoverflow.com/questions/1451009/javascript-infamous-loop-problem) –
과 [문제 루프] (http://stackoverflow.com/questions/6549911/problem-with-loop) –
및 [자바 스크립트에서 카운터 변수에 대한 이상한 값] (http://stackoverflow.com/questions/10317495/weird-value- for-counter-variable-in-javascript) –