비동기 HTTP 요청으로부터 각진 JS 데이터가 채워지지 않습니다
-
12-12-2019 - |
문제
내 각형 모듈이 서버에 연결되는 경우로드 DIV를 표시하려고합니다.나는 Angularjs 1.0.1 및 Angularjs 자원 1.0.1을 사용하여 추가 DOM 조작 및 Ajax 지원을 위해 HTML 및 jQuery 1.7.2의 기능을 확장합니다.
i는 Ajax 호출을 비동기에서 AJAX 호출을 실행하지 않으면 AJAX 호출을 실행하지만 애니메이션 GIF가 애니메이션이 아닌 경우를 제외하고는 AJAX 호출을 실행하지 못한다는 것을 알아 냈습니다.
비동기에서 AJAX 호출을 실행하면 TRUE로 리턴 된 데이터가로드 된 템플릿 부분의 각도 모델 변수에로드되지 않습니다.
는 애니메이션 로딩 DIV를 표시하고 각도 데이터를 모델로로드 할 수있는 애니메이션 로딩 DIV를 얻을 수 있습니까?
해결책
잘하면 당신을 정확하게 이해하고 있습니다.AJAX 요청에 적재 진행 상황을 표시하려고합니다.이렇게하려면 응답 인터셉터가 필요합니다.다음은이 http://jsfiddle.net/zdam/dbr2r/ 이렇게하는 방법의 예입니다.
// register the interceptor as a service, intercepts ALL angular ajax http calls
.factory('myHttpInterceptor', function ($q, $window, $rootScope) {
return function (promise) {
$rootScope.nowloading = true; // use ng-show="nowloading" on element containing spinner
return promise.then(function (response) {
// do something on success
$rootScope.nowloading = false; // need to turn it off on success
return response;
}, function (response) {
// do something on error
$rootScope.nowloading = false; // need to turn it off on failure
$rootScope.network_error = true; // you might want to show an error icon.
return $q.reject(response);
});
};
.
희망이 도움이
- Dan
제휴하지 않습니다 StackOverflow