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 相关文章推荐
return false,对阻止事件默认动作的一些测试代码
Nov 17 Javascript
如何使用Jquery获取Form表单中被选中的radio值
Aug 09 Javascript
javascript生成随机大小写字母的方法
Feb 20 Javascript
jQuery实现鼠标可拖动调整表格列宽度
May 26 Javascript
jQuery学习笔记之 Ajax操作篇(三) - 过程处理
Jun 23 Javascript
jquery Deferred 快速解决异步回调的问题
Apr 05 Javascript
使用jQuery UI库开发Web界面的简单入门指引
Apr 22 Javascript
Bootstrap3 input输入框插入glyphicon图标的方法
May 16 Javascript
js以及jquery实现手风琴效果
Apr 17 Javascript
Angular.js与node.js项目里用cookie校验账户登录详解
Feb 22 Javascript
VueJS事件处理器v-on的使用方法
Sep 27 Javascript
JS实现快递单打印功能【推荐】
Jun 21 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
自己前几天写的无限分类类
2007/02/14 PHP
php中选择什么接口(mysql、mysqli)访问mysql
2013/02/06 PHP
PHP学习笔记之php文件操作
2016/06/03 PHP
py文件转exe时包含paramiko模块出错解决方法
2016/08/12 PHP
laravel框架中表单请求类型和CSRF防护实例分析
2019/11/23 PHP
csdn 批量接受好友邀请
2009/02/19 Javascript
js判断数据类型如判断是否为数组是否为字符串等等
2014/01/15 Javascript
使用javascript做的一个随机点名程序
2014/02/13 Javascript
Node.js事件循环(Event Loop)和线程池详解
2015/01/28 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
2015/02/13 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
2015/04/27 Javascript
jQuery实现带有动画效果的回到顶部和底部代码
2015/11/04 Javascript
jquery实现异步加载图片(懒加载图片一种方式)
2017/04/24 jQuery
Vue前端开发规范整理(推荐)
2018/04/23 Javascript
微信小程序将字符串生成二维码图片的操作方法
2018/07/17 Javascript
解决Layui数据表格中checkbox位置不居中的方法
2018/08/15 Javascript
vue根据值给予不同class的实例
2018/09/29 Javascript
五分钟搞懂Vuex实用知识(小结)
2019/08/12 Javascript
JS实现简单省市二级联动
2019/11/27 Javascript
[03:08]Ti4观战指南上
2014/07/07 DOTA
详解Python中的多线程编程
2015/04/09 Python
Python使用requests提交HTTP表单的方法
2018/12/26 Python
Python多图片合并PDF的方法
2019/01/03 Python
在Python中通过getattr获取对象引用的方法
2019/01/21 Python
python判断变量是否为列表的方法
2020/09/17 Python
松下电器美国官方商店:Panasonic美国
2016/10/14 全球购物
POP文化和音乐灵感的时尚:Hot Topic
2019/06/19 全球购物
戴森比利时官方网站:Dyson BE
2020/10/03 全球购物
如何减少垃圾回收让内存更加有效使用
2013/10/18 面试题
售后服务承诺书模板
2014/05/21 职场文书
婚纱店策划方案
2014/05/22 职场文书
金融系毕业生自荐书
2014/07/08 职场文书
银行竞聘上岗演讲稿
2014/09/12 职场文书
企业法律事务工作总结
2015/08/11 职场文书
以下牛机,你有几个
2022/04/05 无线电
MySQL数据库之存储过程 procedure
2022/06/16 MySQL