【发布时间】:2018-06-20 08:52:17
【问题描述】:
我正在尝试在特定的空闲时间间隔(比如 10 分钟)后显示超时错误消息
我点击了下面的链接,它按预期工作。 https://long2know.com/2015/04/user-session-timeout/
var idleService = function ($rootScope, $timeout, $log) {
var idleTimer = null,
startTimer = function () {
$log.log('Starting timer');
idleTimer = $timeout(timerExpiring, 10000);
},
stopTimer = function () {
if (idleTimer) {
$timeout.cancel(idleTimer);
}
},
resetTimer = function () {
stopTimer();
startTimer();
},
timerExpiring = function () {
stopTimer();
$rootScope.$broadcast('sessionExpiring');
$log.log('Timer expiring ..');
};
startTimer();
return {
startTimer: startTimer,
stopTimer: stopTimer,
resetTimer: resetTimer
};
};
没有$broadcast 和$on 是否可以实现。关于如何让控制器变量知道超时时间的任何指导,目前是通过服务中的 $broadcast 和控制器上的 $on 来实现的,然后将在 $on 函数中修改变量。
【问题讨论】:
标签: angularjs settimeout