vue路由跳转时判断用户是否登录功能的实现


Posted in Javascript onOctober 26, 2017

通过判断该用户是否登录过,如果没有登录则跳转到login登录路由,如果登录则正常跳转。

一丶首先在用户登录前后分别给出一个状态来标识此用户是否登录(建议用vuex);

简单用vuex表示一下,不会可以自己去官网多看看;

import Vue from ‘vue‘
import Vuex from ‘vuex‘

Vue.use(Vuex);

var state = {
  isLogin:0,     //初始时候给一个 isLogin=0 表示用户未登录
};

const mutations = {
  changeLogin(state,data){
    state.isLogin = data;
  }

};

二丶在用户登录时改变登录状态;

this.$store.commit(‘changeLogin‘,‘100‘)   
 //登录后改变登录状态 isLogin = 100 ;

三丶重点来了;

在你的路由入口加上导航钩子,具体什么意思看代码;

一丶设置需要校验的路由

{ path: ‘/admin‘, 
  component: Admin,
  meta:{auth:true} // 设置当前路由需要校验  不需要校验的路由就不用写了;不要问为什么,自己去看官网

  }

二丶路由跳转并校验

router.beforeEach((to,from,next) => {   

if(to.matched.some( m => m.meta.auth)){     

// 对路由进行验证     
if(store.state.isLogin==‘100‘) { // 已经登陆       
next()   // 正常跳转到你设置好的页面     
}
else{       

// 未登录则跳转到登陆界面,query:{ Rurl: to.fullPath}表示把当前路由信息传递过去方便登录后跳转回来;

 

next({path:‘/login‘,query:{ Rurl: to.fullPath} })
 

 } 


}else{ 



next() 

} 
})

以上这篇vue路由跳转时判断用户是否登录功能的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
学习从实践开始之jQuery插件开发 菜单插件开发
May 03 Javascript
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
Apr 26 Javascript
基于jquery实现页面滚动到底自动加载数据的功能
Dec 19 Javascript
快速解决js开发下拉框中blur与click冲突
Oct 10 Javascript
Javascript动画效果(4)
Oct 11 Javascript
详解vue的数据binding绑定原理
Apr 12 Javascript
使用AngularJS对表单提交内容进行验证的操作方法
Jul 12 Javascript
仿京东快报向上滚动的实例
Dec 13 Javascript
koa大型web项目中使用路由装饰器的方法示例
Apr 02 Javascript
Angular8路由守卫原理和使用方法
Aug 29 Javascript
jQuery实现获取多选框的值示例
Feb 07 jQuery
Vue实现菜单切换功能
Nov 08 Javascript
webpack3之loader全解析
Oct 26 #Javascript
JS使用正则表达式找出最长连续子串长度
Oct 26 #Javascript
AngularJS实现的输入框字数限制提醒功能示例
Oct 26 #Javascript
JS处理数据四舍五入(tofixed与round的区别详解)
Oct 26 #Javascript
详谈构造函数加括号与不加括号的区别
Oct 26 #Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
Oct 26 #Javascript
纯JavaScript实现实时反馈系统时间
Oct 26 #Javascript
You might like
Ajax PHP分页演示
2007/01/02 PHP
php比较两个绝对时间的大小
2014/01/31 PHP
PHP判断网络文件是否存在的方法
2015/03/12 PHP
PHP实现即时输出、实时输出内容方法
2015/05/27 PHP
php pdo oracle中文乱码的快速解决方法
2016/05/16 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
javascript中call apply 的应用场景
2015/04/16 Javascript
jquery validate demo 基础
2015/10/29 Javascript
学习Angularjs分页指令
2016/07/01 Javascript
Bootstrap CSS组件之按钮组(btn-group)
2016/12/17 Javascript
JS实现的随机排序功能算法示例
2017/06/09 Javascript
jquery实现楼层滚动效果
2018/01/01 jQuery
利用jqprint插件打印页面内容的实现方法
2018/01/09 Javascript
pace.js和NProgress.js两个加载进度插件的一点小总结
2018/01/31 Javascript
vue集成百度UEditor富文本编辑器使用教程
2018/09/21 Javascript
详解vue-property-decorator使用手册
2019/07/29 Javascript
基于ant design日期控件使用_仅月份的操作
2020/10/27 Javascript
[00:34]拔城逐梦,热血永恒!2020(秋)完美世界城市挑战赛报名开启
2020/10/09 DOTA
Python自定义scrapy中间模块避免重复采集的方法
2015/04/07 Python
使用XML库的方式,实现RPC通信的方法(推荐)
2017/06/14 Python
Python测试人员需要掌握的知识
2018/02/08 Python
Python即时网络爬虫项目启动说明详解
2018/02/23 Python
Windows 安装 Anaconda3+PyCharm的方法步骤
2019/06/13 Python
Selenium使用Chrome模拟手机浏览器方法解析
2020/04/10 Python
在 Python 中使用 7zip 备份文件的操作
2020/12/11 Python
Peter Alexander新西兰站:澳大利亚领先的睡衣设计师品牌
2016/12/10 全球购物
退休教师欢送会主持词
2014/03/31 职场文书
仓库文员岗位职责
2014/04/06 职场文书
低碳环保口号
2014/06/12 职场文书
陈胜吴广起义口号
2014/06/20 职场文书
大型主题婚礼活动策划方案
2014/09/15 职场文书
中学生旷课检讨书500字
2014/10/29 职场文书
药店营业员岗位职责
2015/04/14 职场文书
实践论读书笔记
2015/06/29 职场文书
初中毕业感言300字
2015/07/31 职场文书
全国劳模先进事迹材料(2016精选版)
2016/02/25 职场文书