react关闭浏览器后自动退出登录

  在网上了百度了不少,都是以鼠标的坐标位置来判断,但是对react自动触发的来说,用这个鼠标的完全不起作用。

 经过百度 + 多次测试,发现用时间来判断比较合适,现将代码贴上分享并方便以后查看。

 var _beforeUnload_time = 0, _gap_time = 0;
var is_fireFox = navigator.userAgent.indexOf("Firefox")>-1;//是否是火狐浏览器
window.οnunlοad=function(e){//关闭浏览器后的退出操作
_gap_time = new Date().getTime() - _beforeUnload_time;
if(_gap_time <= 5) {
dispatch({type: 'app/logout'});
}
else{
console.info("你正在刷新页面");
}
}

window.onbeforeunload  =function(e) { //对火狐浏览器的特殊处理
_beforeUnload_time = new Date().getTime();
if(is_fireFox){//火狐关闭执行
dispatch({type: 'app/logout'});
}
}

你可能感兴趣的:(react开发笔记)