mounted() {
//用于检测是否离开页面,如果离开退出
window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
window.addEventListener('unload', e => this.unloadHandler(e))
}
destroyed() {用于销毁对象
window.removeEventListener('beforeunload', e => this.beforeunloadHandler(e))
window.removeEventListener('unload', e => this.unloadHandler(e))
},
methods: {
beforeunloadHandler(e){
this._beforeUnload_time=new Date().getTime();
},
unloadHandler(event){
//页面整体关闭时,调用的方法(有缺陷,待测试)
if(event.clientX<=0 && event.clientY<0) {
//调用退出的方法
//自己的url
navigator.sendBeacon('url', '参数');
}
this._gap_time=new Date().getTime()-this._beforeUnload_time;
//判断是窗口关闭还是刷新
if(this._gap_time<=5){
//调用退出的方法
//自己的url
navigator.sendBeacon('url', '参数');
}
},
}
//参考了好多个大神的文档,具体的也记不住了