问题只是定期重新加载身份验证令牌。我正在使用$interval
服务。代码如下
function refresh_session() {
console.log("testing");
}
module.exports = function ($scope,$rootScope,$localStorage,$location,$interval,$http) {
$interval(refresh_session,5000);
这很好用,但我需要访问$scope
和$localStorage
中的变量来更新令牌。我已尝试将$scope
内定义的函数传递给$interval
服务,并将参数传递给外部函数。他们俩都没有工作。使用角度方法我可以采用的正确方法是什么?
答案 0 :(得分:1)
您是否可以在导出的函数中放置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);
...
};