30分钟无操作自动退回登录界面
在main.js文件进行操作
Vue.mixin({
data() {
return {
inactivityTimer: ''
}
},
created() {
this.resetTimer()
// 在用户活动时调用 resetTimer 重置定时器
document.addEventListener('mousemove', this.resetTimer)
document.addEventListener('keydown', this.resetTimer)
}
methods: {
resetTimer() {
// 30分钟无操作自动退回登录界面
clearTimeout(this.inactivityTimer)
this.inactivityTimer = setTimeout(() => {
// 执行注销操作或者跳转到登录页面的代码
router.push('/login')
}, 30 * 60 * 1000) // 30分钟
}
}