각도 앱이 있지만 때로는 콜백이 실행되기 전에 실행되는 경우가 있습니다. 내 API 호출에 대한 서비스를 정의했다. 그 메소드는 다음과 같다.API 호출 후 각도 콜백
function addOffer(id) {
var request = $http({
method: "get",
url: "/api/campaign/offers",
params: {
action: "add",
id: id
}
});
return (request.then(handleSuccess, handleError));
}
function handleError(response) {
// The API response from the server should be returned in a
// nomralized format. However, if the request was not handled by the
// server (or what not handles properly - ex. server error), then we
// may have to normalize it on our end, as best we can.
if (
!angular.isObject(response.data) || !response.data.message
) {
return ($q.reject("An unknown error occurred."));
}
// Otherwise, use expected error message.
return ($q.reject(response.data.message));
}
function handleSuccess(response) {
return (response.data);
}
그리고 내 컨트롤러에서 내가 가진 범위 기능은 부하 원격 데이터 기능은 응용 프로그램의 백엔드에 저장되는 것과 클라이언트를 동기화이
$scope.addOffer = function(){
campaignService.addOffer($scope.id).then(
loadRemoteData()
);
};
같이 정의.
내 문제는 컨트롤러 제안 addOffer에서 offer가 추가되기 전에 loadRemoteData() 함수가 실행되어 새로운 오퍼없이 데이터를로드한다는 점입니다. 그러나 강제적 인 리프레시가있을 때 거기에 오퍼가 있습니다. 이것이 예상대로 작동 할 수 있도록 다르게 수행되어야하는 것이 있습니까?
:
는 귀하의 컨트롤러 코드를 변경. 이것은 다시 한번 왜 자신의 기본이 매우 강해야 하는지를 반복합니다. –