gpt4 book ai didi

javascript - AngularJS - 状态更改时停止自动刷新页面

转载 作者:行者123 更新时间:2023-12-03 10:27:36 24 4
gpt4 key购买 nike

一旦 Angular JS 中的状态发生更改,有没有办法停止自动刷新页面?

我有以下代码:

AngularJS Controller

$scope.data= [];
var findData= function() {
service.findData().then(function (data) {
$scope.data= data;
});
};
findData();

$interval(function() {
console.log("Refreshed!");
findData();
}, 5000);

我尝试在 $interval 函数中添加额外条件:

$interval(function() {
console.log("Refreshed!");
if($state.$current.path.name == "stateWithRefresh") {
findData();
}
}, 5000);

但是没有成功。

我想要实现的是在一定时间间隔后自动刷新页面,但仅当用户处于与该页面关联的状态时。

谢谢。

最佳答案

您可以绑定(bind)到作用域的 destroy 方法,并在那里取消间隔。

    var stop = $interval(function() {
console.log("Refreshed!");
findData();

}, 5000);

scope.$on('$destroy', function() {
$interval.cancel(stop);
});

关于javascript - AngularJS - 状态更改时停止自动刷新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29346897/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com