vue 关闭页面 触发退出,vue关闭浏览器当前页面
本文主要介绍vue关闭浏览器注销,一般按照两个事件执行:beforeunload和unload。本文详细介绍了如何实现,有兴趣的可以看看。
目录
1、beforeunload事件2、unload事件3、项目需要的源代码部分:我在网上也找了很多类似的文章,但是用起来有些问题。毕竟得适合自己的需求。我是来申请vue3的,理论上vue2也可以。我写的方法是通用的。
这些方法都是根据beforeunload和unload两个事件来执行的。
下面我搜了一下菜鸟教程和MDN对两个事件的介绍,可以自己搞清楚。
1、beforeunload事件
1.1、菜鸟教程:
1.2、MDN
2、unload事件
2.1、菜鸟教程
2.2、MDN
MDN:一般来说,我们建议使用window.addEventListener()监听unload (en-US)事件,而不是直接给onunload赋值。
把我用的源代码贴在下面;
3、源码部分
3.1.方法一:可以用html页面编写(直接使用)
var _beforeUnload_time=0,_ gap _ time=0;
window.onunload=function (){
_gap_time=新日期()。getTime()-_ before unload _ time;
If(_gap_time=10) {//浏览器关闭
window . mgr . signoutredirect();//这个mgr是我在window中公开的注销方法。
}else{//浏览器刷新-chrome刷新
console . log(document . domain);
Return confirm(您确定要离开此系统吗?);
}
};
window . onbeforeunload=function(){
_beforeUnload_time=新日期()。getTime();
};
3.2.方法二:可以写在app.vue等组件中使用(监控事件)
data() {
返回{
gap_time: 0,
在Unload_time之前:0,
};
},
方法:{
//关闭窗口前执行
beforeunloadHandler() {
this.beforeUnload_time=新日期()。getTime();
},
卸载处理程序(){
this.gap_time=新日期()。getTime()-this . before unload _ time;
//判断窗口是关闭还是刷新毫秒。网上写的大多是5。
if (this.gap_time=10) {
mgr . signoutredirect();//退出登录界面。这里应该改成个人注销方式。
}否则{
console . log(document . domain);
Return confirm(您确定要离开此系统吗?);
}
},
},
Unmounted() {//vue可以用destroyed()生命周期替换,但是这个也可以用。
//移除监视器
window . removeeventlistener( before unload ,()=this . before unload handler());
window . removeeventlistener( unload ,()=this . unload handler());
},
已安装(){
//侦听浏览器关闭
window . addevent listener( before unload ,()=this . before unload handler());
window . addevent listener( unload ,()=this . unload handler());
},
参考文章:
当vue关闭浏览器时,它触发事件并执行退出登录界面。
Vue关闭浏览器并清除令牌(刷新敏感)
关于vue关闭浏览器注销实现的这篇文章到此为止。有关vue关闭浏览器和注销的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。