import { getUserToken, getToken } from "@/utils/auth"
export default {
data() {
return {
beforeUnloadTime: "",
gapTime: "",
}
},
mounted() {
window.addEventListener("beforeunload", e => this.beforeunloadHandler(e));
window.addEventListener("unload", e => this.unloadHandler(e));;
},
destroyed() {
window.removeEventListener("beforeunload", e => this.beforeunloadHandler());
window.removeEventListener("unload", e => this.unloadHandler());
},
methods: {
beforeunloadHandler() {
this.beforeUnloadTime = new Date().getTime()
console.log('this.beforeUnloadTime ==>', this.beforeUnloadTime);
},
async unloadHandler() {
if (JSON.parse(getUserToken())) {
this.gapTime = new Date().getTime() - this.beforeUnloadTime;
console.log(' this.gapTime==>', this.gapTime);
if (this.gapTime <= 5) {
const userId = new FormData()
userId.append("userId", JSON.parse(getUserToken()).id)
fetch("/api/usermodule/user/exitAccount", {
method: "POST",
body: userId,
headers: { token: getToken() },
keepalive: true
}).then(res => res.json()).then(data => { })
}
}
},
},
}