You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

52 lines
1.5 KiB

<template>
<transition name="fade">
<router-view></router-view>
</transition>
</template>
<script>
export default {
data() {
return {
query: {},
version: '1.3.3'
}
},
created () {
this.versionReload()
},
mounted() {
// 监听浏览器关闭事件,自动退出登录 - rqrq
window.addEventListener('beforeunload', this.handleBeforeUnload)
},
beforeDestroy() {
// 移除事件监听 - rqrq
window.removeEventListener('beforeunload', this.handleBeforeUnload)
},
methods: {
versionReload(){
let version = this.version //版本号(每次上线前需要更新下版本号)
console.log('最新系统版本: ',version)
console.log('当前系统版本: ',this.version)
let versionLocal = localStorage.getItem('_version_');
if(version!=versionLocal){
localStorage.setItem('_version_',version);
this.version=versionLocal;
location.reload();
}
},
// 浏览器关闭时自动退出登录 - rqrq
handleBeforeUnload() {
const token = this.$cookie.get('token')
if (token && token.trim()) {
// 使用 sendBeacon 发送退出请求,可靠性高 - rqrq
const url = this.$http.adornUrl('/sys/logout')
navigator.sendBeacon(url, new Blob([JSON.stringify({ token })], { type: 'application/json' }))
}
}
}
}
</script>