vue实现登录后页面跳转到之前页面


Posted in Javascript onJanuary 07, 2018

在开发中我们经常遇到这样的需求,需要用户直接点击一个链接进入到一个页面,用户点击后链接后会触发401拦截返回登录界面,登录后又跳转到链接的页面而不是首页,这种问题该如何去做呢?

先说一下我们需要用到的几个API:

1.router.currentRoute:当前的路由信息对象,我们可以通过router.currentRoute.fullPath获得解析后的 URL,包含查询参数和 hash 的完整路径,如果要访问的页面的路由有命名(name)的话,可以通过router.currentRoute.name获得当前路由的名称。

2.router.replace:作用和router.push相同,不过它不会向history添加新纪录,而是替换当前的history记录。

由于大家的代码写的都不一样,我就不放我具体的实现代码,简单介绍一下思路:

1.用户点开链接后,跳转到的目标的路由页面,然后触发401拦截器,返回登录页面:

//401拦截
if(status == "401"){
  router.push("/login")   
}

2.我们可以在401拦截的时候将目标链接保存在url中:

if (status == 401) {
   //判断当前的路由是否是目标路由
   if(router.currentRoute.name == "target"){
    //跳转回login路由,并把目标路由的url路径保存在login的query中
    router.replace({
     name:"login",
     query: {redirect: router.currentRoute.fullPath}
    })
   }else{
    /* 普通401拦截直接返回到登录页面 */
    router.push('/login');
   }
  }

3.点击登录后使用url上保存的query直接跳转回目标页面

router.push({path:decodeURIComponent(url)});

以上就是我们分享的功能实现代码,感谢你对三水点靠木的支持。

Javascript 相关文章推荐
jQuery对象和DOM对象的相互转化实现代码
Mar 02 Javascript
ajax异步刷新实现更新数据库
Dec 03 Javascript
javascript加号"+"的二义性说明
Mar 04 Javascript
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
Sep 30 Javascript
JAVA四种基本排序方法实例总结
Jul 24 Javascript
JS 实现倒计时数字时钟效果【附实例代码】
Mar 30 Javascript
JavaScript代码实现左右上下自动晃动自动移动
Apr 08 Javascript
AngularJS中如何使用echart插件示例详解
Oct 26 Javascript
jQueryMobile之窗体长内容的缺陷与解决方法实例分析
Sep 20 jQuery
基于js中的存储键值对以及注意事项介绍
Mar 30 Javascript
vue小白入门教程
Apr 02 Javascript
js禁止查看源文件屏蔽Ctrl+u/s、F12、右键等兼容IE火狐chrome
Oct 01 Javascript
Nginx 配置多站点vhost 的方法
Jan 07 #Javascript
express+mockjs实现模拟后台数据发送功能
Jan 07 #Javascript
使用mock.js随机数据和使用express输出json接口的实现方法
Jan 07 #Javascript
使用 Node.js 开发资讯爬虫流程
Jan 07 #Javascript
CentOS环境中MySQL修改root密码方法
Jan 07 #Javascript
12条写出高质量JS代码的方法
Jan 07 #Javascript
js数组方法reduce经典用法代码分享
Jan 07 #Javascript
You might like
php urlencode()与urldecode()函数字符编码原理详解
2011/12/06 PHP
PHP遍历XML文档所有节点的方法
2015/03/12 PHP
Yii2使用swiftmailer发送邮件的方法
2016/05/03 PHP
php curl常用的5个经典例子
2017/01/20 PHP
php curl上传、下载、https登陆实现代码
2017/07/23 PHP
解决PHP Opcache 缓存刷新、代码重载出现无法更新代码的问题
2020/08/24 PHP
javascript 简单高效判断数据类型 系列函数 By shawl.qiu
2007/03/06 Javascript
XHTML下,JS浮动代码失效的问题
2009/11/12 Javascript
原生JS实现响应式瀑布流布局
2015/04/02 Javascript
详解ECharts使用心得总结
2016/12/06 Javascript
nodejs中使用HTTP分块响应和定时器示例代码
2017/03/19 NodeJs
微信小程序 检查接口状态实例详解
2017/06/23 Javascript
Vue模拟数据,实现路由进入商品详情页面的示例
2018/08/31 Javascript
基于javascript实现贪吃蛇小游戏
2019/11/25 Javascript
[06:21]完美世界亚洲区首席发行官竺琦TI3采访
2013/08/26 DOTA
[49:21]TNC vs VG 2019DOTA2国际邀请赛淘汰赛 胜者组赛BO3 第三场 8.20.mp4
2019/08/22 DOTA
python创建关联数组(字典)的方法
2015/05/04 Python
Python Socket编程详细介绍
2017/03/23 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
python爬虫简单的添加代理进行访问的实现代码
2019/04/04 Python
Python restful框架接口开发实现
2020/04/13 Python
python 录制系统声音的示例
2020/12/21 Python
Python3.9.1中使用split()的处理方法(推荐)
2021/02/07 Python
美国高端寝具品牌:Coyuchi
2017/02/08 全球购物
大学毕业感言50字
2014/02/07 职场文书
公司财务流程之主管工作流程
2014/03/03 职场文书
校园歌咏比赛主持词
2014/03/18 职场文书
教师节活动主持词
2014/04/02 职场文书
环保小标语
2014/06/13 职场文书
全国优秀教师事迹材料
2014/08/26 职场文书
物理课外活动总结
2014/08/27 职场文书
单位法定代表人授权委托书
2014/09/20 职场文书
村党支部书记四风问题个人对照检查材料思想汇报
2014/10/06 职场文书
党的群众路线教育实践活动个人整改落实情况汇报
2014/10/28 职场文书
2016年区委书记抓基层党建工作公开承诺书
2016/03/25 职场文书
Python万能模板案例之matplotlib绘制直方图的基本配置
2022/04/13 Python