2017-03-01 5 views
0

나는 전체 변수로 $scope.participants = []을가집니다. 내 문제는 아래 함수를 호출 한 후 다른 변수에서이 변수를 사용했을 때입니다. $scope.participants이 비어 있습니다. 그러나 response.data을 확인한 것은 아닙니다.

$scope.getParticipants = function(seminar_id,seminar_name,seminar_code) { 
    $http({ 
     method: 'GET', 
     dataType: 'JSON', 
     params: { 'seminar_id' : seminar_id }, 
     url: 'getParticipants' 
     }).then(function(response) { 
      $scope.participants=response.data; 
     }); 
    } 
+0

콘솔에서 오류가 발생합니까? – Sajeetharan

+0

'$ http'는 비동기 호출입니다. '$ http '가 데이터를 반환하기 전에'$ scope.participants'는 비어 있습니다. –

+0

이것이 문제를 해결할 수 있는지 확인하십시오. http://stackoverflow.com/questions/18421830/how-to-wait-till-the-response-comes-from-the-http-request-in-angularjs –

답변

0

당신은 당신의 약속 해결 될 때까지 기다릴 필요가,이 작업 plnkr을 확인할 수 있습니다.

+0

1 초 안에 완료 될지도 모른다. –

+0

나는 이것을 시도해 보았고 1 초 안에 완료되지 않을 것이다. – dan

+0

비동기 호출 완료시 범위에서 일부 함수 호출에 알리기 위해 콜백이 추가되었습니다. 업데이트 확인 [plnkr] (https://plnkr.co/edit/ATlhJvXgW3K0JVMqQCJm?p=preview) –