currentPage = 1;
$scope.loadPages = function() {
Array.prototype.pushArray = function() {
this.push.apply(this, this.concat.apply([], arguments));
};
if (currentPage < totalPages) {
$scope.infiniteScoll = true;
$http({
url: "http://someurl.php",
method: "GET",
params: {
"topicId": $stateParams.topicId,
"pageNumber": currentPage
}
}).then(function (response) {
$scope.posts.pushArray(response.data);
alert('w2');
currentPage = parseInt(response.data[0].currentPage) + 1;
totalPages = parseInt(response.data[0].totalPages) + 1;
}).
finally(function() {
$scope.infiniteScoll = false;
});
}
}
4 시간 동안 디버깅했는데 왜 두 번 실행되는지 아직 알 수 없습니다. loadPages가 내 지시어인데, 그 안에있는 모든 것을 삭제하고 경고 ('f') 만 남기면 한번만 실행됩니다. 아마도 나는 다른 것을 잘못했을 수도 있습니다.
시도처럼
은 매우 느리게 이동하고, 두 번 해고 여부를 확인합니다. 주석으로 => 말하지 않으면, 나는 똑같은 문제가있다. – Rasalom
차단 키워드이므로 경고를 시도 할 수 없습니다. 간단한 console.log()를 사용해보십시오. 간단한 스크롤링 문제 일 수 있습니다. 두 번째 호출을 멈추게 할 함수의 맨 위에 부울과 "if 블록"을 추가하면 트릭을 만들게됩니다. – Polochon
@Rasalom 정말 느리게 스크롤하려고했는데 여전히 문제가 발생했습니다. occour. 나는 내 스크롤 지시문 문제가 아니라고 확신한다. 내 $ scope.loadPages에 경고 만 남겼을 때, 그것은 한 번 실행되었다. –