使用sessionStorage解决刷新后自动定点登陆的问题
来源:互联网 发布:美术教学网络系统 编辑:程序博客网 时间:2024/06/11 12:49
需求描述:
1. 后台系统中,如何客户按页面刷新键或者F5/Ctrl+R进行刷新,则需要自动进入之前三级导航的列表对应页面,而非列表进入的非后台返回权限路由页面;
2. 关闭当前页面再进入则需要用户进入登陆页面,点击登陆页面登陆。
解决方案:
1. onBeforeUnload方法中监听,判断是关闭还是刷新,别人给的代码如下(经测试无效):
window.onbeforeunload=function (){ alert("===onbeforeunload==="); if(event.clientX>document.body.clientWidth && event.clientY < 0 || event.altKey){ alert("你关闭了浏览器"); }else{ alert("你正在刷新页面"); } }
但是还是新学习了点知识点:
页面加载时只执行onload
页面关闭时先执行onbeforeunload,最后onunload
页面刷新时先执行onbeforeunload,然后onunload,最后onload
2.使用sessionStorage,这或许可以称为换一种解决思路
在用户点击登陆按钮后保存一个sessionStorage值
sessionStorage.setItem('isRefresh', true);
当再次进入login页面时检查该值是否存在(系统默认页面为登录页),如果存在说明是刷新操作,否则是关闭页面操作,然后可进行对应操作,部分代码如下:
if(Storage.get('prevRouterMenu') && sessionStorage.getItem('isRefresh')) {//判断时候刷新时需要默认调用登陆接口跳转指定页面 const prevRouterMenu = JSON.parse(Storage.get('prevRouterMenu')); if(Storage.get('isLogined')) { const client = JSON.parse(Storage.get('userClient')); this.adminLoginIn(client).then( () => { this.$router.push({ name: prevRouterMenu.url, query: {pageName: prevRouterMenu.name, url: prevRouterMenu.url} }); }).catch( (error) => { this.handleLoadingStatus(); }); } }
关于sessionStorage,不熟悉的小伙伴请参考HTML 5 Web 存储
阅读全文
0 0
- 使用sessionStorage解决刷新后自动定点登陆的问题
- 解决Button自动刷新页面的问题
- 解决使用Iframe无刷新提交后IE进度条一直在加载的问题
- 解决微信小程序使用switchTab跳转后页面不刷新的问题
- Xamarin: UITableView设置DataSource后没有自动刷新的问题
- 关于点击按钮后页面自动刷新的问题
- 第一次安装Oracle10后不能登陆问题的解决
- 解决PHP用户登陆后无法退出问题的办法
- 使用sessionstorage解决微信网页返回保留原状态的问题
- Chrome 下登陆京东提示"请刷新后重新尝试"的解决
- 解决页面刷新后跳回顶部的问题
- 解决页面刷新后跳回顶部的问题
- 解决页面刷新后滚动条回滚的问题。
- 对于MJRefresh刷新后往上偏移问题的解决
- 解决eclipse 文件更新不自动刷新的问题
- Struts+Jsp 解决购物车刷新后购买数量自动累加问题..
- 使用Python+Qt时解决QTreeWidget中的内容超出边界后自动隐藏的问题
- 【vue2.0】解决使用vue-cli生成项目后项目地址自动添加#号的问题
- 禁止表单记住密码自动填充
- 浅析人脸检测之Haar分类器方法
- Swift-UIScrollView 应用
- html 的src加时间戳
- Subresource Integrity 介绍--SRI (Subresource Integrity) 的检查
- 使用sessionStorage解决刷新后自动定点登陆的问题
- 早安!
- pandas学习(四)--数据的归一化
- Laravel入门教程(一)
- webpack 模块打包器
- wpf记录
- [转]【OpenCV入门教程之十六】OpenCV角点检测之Harris角点检测
- Android探索之旅(第二十四篇)进阶Android高级开发工程师你需要掌握的知识体系
- recyclerview的点击条目删除