728x90
var cnt = 0;
$scope.test1 = function () {
console.log("$scope.test");
cnt++;
if (cnt > 10) {
$scope.stop();
}
}
var test2 = function () {
console.log("test2");
}
var itv = $interval(function() {
$scope.test1();
test2();
}, 1000);
$scope.stop = function () {
$interval.cancel(itv);
}
만약에 interval이 돌고 있는 상태에서 다른 페이지로 이동했는데
다른 페이지에서도 계속 interval이 돌고 있을 때 이걸 끄고 싶다면
$interval이 작성된 파일에다가
$scope.$on("$destroy", function () {
$interval.cancel(itv);
});
이렇게 작성하면 다른 페이지 이동시 $interval이 실행중인게 멈춤.
반응형
'AngularJS' 카테고리의 다른 글
[AngularJS] 앵귤러 forEach문 (0) | 2019.06.05 |
---|---|
[AngularJS] controller 2번 실행 현상 (0) | 2019.06.05 |