Vue登录拦截 登录后继续跳转指定页面的操作


Posted in Javascript onAugust 04, 2020

在开发中我们经常遇到这样的需求,需要用户登录后才可以访问该页面,如果用户没有登录点击该页面时则自动跳转到登录页面,登录后又跳转到链接的页面而不是首页,这种问题该如何去做呢?

1、在路由器router下的 index.js 的配置中,给需要拦截登录的页面的路由上加一个meta: {loginRequest: true} ,其中loginRequest 变量自己可以随意定义

Vue登录拦截 登录后继续跳转指定页面的操作

2、在main.js文件里面添加beforeEach钩子函数

Vue登录拦截 登录后继续跳转指定页面的操作

解释:

router.beforeEach((to, from, next) => { } 三个参数:

to:即将要进入的目标 路由对象

from:当前导航正要离开的路由

next:(function函数) 调用next() 进行管道中的下一个钩子

next() 无参 进行 下一个钩子函数

next({ path:'/xxx' , query:{}}) 携带参数跳到xxx页面

3、登录页面login.vue,登录完成后,跳到指定页面或首页

Vue登录拦截 登录后继续跳转指定页面的操作

补充知识:vue实现登录后跳转到来源路由url

sessionStorage存储from.path来源的路由url,如果不是登录或者注册就拦截跳到登录页,如果是就放行

router.beforeEach(function(to,from,next){
 
  if(to.path!='/login' && to.path!='/register'){
    sessionStorage.setItem('referrer',from.path) //储存来源路由
    alert('请登录')
    next({
      path:'/login'
    })
  }else{
    next()
  }
 
})

登录后判断sessionStorage中是否有存储来源路由,如果有就跳转到这个路由

//获取来源页路由
var referrer = sessionStorage.getItem('referrer');
if(referrer != null){
  this.$router.push(referrer)
}else {
  this.$router.push('/home')
}

以上这篇Vue登录拦截 登录后继续跳转指定页面的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
快速保存网页中所有图片的方法
Jun 23 Javascript
javascript TextArea动态显示剩余字符
Oct 22 Javascript
JS动态获取当前时间,并写到特定的区域
May 03 Javascript
extjs两个tbar问题探讨
Aug 08 Javascript
jquery实现的用户注册表单提示操作效果代码分享
Aug 28 Javascript
JS实现列表页面隔行变色效果
Mar 25 Javascript
js实现移动端编辑添加地址【模仿京东】
Apr 28 Javascript
jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法
Mar 28 jQuery
Nuxt.js 数据双向绑定的实现
Feb 17 Javascript
JS块级作用域和私有变量实例分析
May 11 Javascript
微信小程序页面传多个参数跳转页面的实现方法
May 17 Javascript
微信小程序实现图片压缩
Dec 03 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
Aug 04 #Javascript
浅谈在vue-cli3项目中解决动态引入图片img404的问题
Aug 04 #Javascript
解决vuecli3中img src 的引入问题
Aug 04 #Javascript
简介JavaScript错误处理机制
Aug 04 #Javascript
vue 出现data-v-xxx的原因及解决
Aug 04 #Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
Aug 04 #Javascript
vue 实现根据data中的属性值来设置不同的样式
Aug 04 #Javascript
You might like
php批量更改数据库表前缀实现方法
2013/10/26 PHP
PHP实现在数据库百万条数据中随机获取20条记录的方法
2017/04/19 PHP
jQuery的三种$()
2009/12/30 Javascript
js四舍五入数学函数round使用实例
2014/05/09 Javascript
jQuery判断当前点击的是第几个li的代码
2014/09/26 Javascript
Javascript非构造函数的继承
2015/04/27 Javascript
JavaScript使用Range调色及透明度实例
2016/09/25 Javascript
Bootstrap基本组件学习笔记之按钮组(8)
2016/12/07 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
Angularjs自定义指令实现分页插件(DEMO)
2017/09/16 Javascript
Vue中使用sass实现换肤功能
2018/09/07 Javascript
vue中注册自定义的全局js方法
2019/11/15 Javascript
vue总线机制(bus)知识点详解
2020/05/10 Javascript
解决vue数据不实时更新的问题(数据更改了,但数据不实时更新)
2020/10/27 Javascript
Python实现的ini文件操作类分享
2014/11/20 Python
轻松掌握python设计模式之策略模式
2016/11/18 Python
python网络编程调用recv函数完整接收数据的三种方法
2017/03/31 Python
关于Python形参打包与解包小技巧分享
2019/08/24 Python
详解numpy矩阵的创建与数据类型
2019/10/18 Python
python画环形图的方法
2020/03/25 Python
DataFrame.groupby()所见的各种用法详解
2020/06/14 Python
python爬虫使用requests发送post请求示例详解
2020/08/05 Python
CSS3制作彩色进度条样式的代码示例分享
2016/06/23 HTML / CSS
CSS3实现内凹圆角的实例代码
2017/05/04 HTML / CSS
移动端开发HTML5页面点击按钮后出现闪烁或黑色背景的解决办法
2018/09/19 HTML / CSS
八年级生物教学反思
2014/01/22 职场文书
运动会开幕式解说词
2014/02/05 职场文书
《与朱元思书》的教学反思
2014/04/17 职场文书
《雕塑之美》教学反思
2014/04/24 职场文书
关于对大人不礼貌的检讨书
2014/09/29 职场文书
小学主题班会教案
2015/08/17 职场文书
2016年党员学习廉政准则心得体会
2016/01/20 职场文书
初三数学教学反思
2016/02/17 职场文书
承诺书怎么写 ?
2019/04/16 职场文书
2019奶茶店创业计划书范本!
2019/07/15 职场文书
乔迁新居祝福语
2019/11/04 职场文书