[英]Angularjs calling function at regular interval?
问题很简单,就是要定期重新加载身份验证令牌。 我为此使用$interval
服务。 代码如下
function refresh_session() {
console.log("testing");
}
module.exports = function ($scope,$rootScope,$localStorage,$location,$interval,$http) {
$interval(refresh_session,5000);
这工作得很好,但是我需要访问$scope
和$localStorage
变量来更新令牌。 我尝试将$scope
定义的函数传递给$interval
服务,以及将参数传递给外部函数。 他们两个都不工作。 我可以使用角度方法进行处理的正确方法是什么?
您是否可以将refresh_session
函数放在导出的函数中? 这将允许它访问该函数的参数。 像这样:
module.exports = function ($scope,$rootScope,$localStorage,$location,$interval,$http) {
$interval(refresh_session,5000);
function refresh_session() {
console.log("testing", $scope, $localStorage);
}
...
};
另外,您可以使用一个函数来创建refresh_session
函数:
function refreshSessionCreator($scope, $localStorage){
return function(){
console.log("testing", $scope, $localStorage);
};
}
module.exports = function ($scope,$rootScope,$localStorage,$location,$interval,$http) {
$interval(refreshSessionCreator($scope, $localStorage),5000);
...
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.