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 相关文章推荐
javascript Zifa FormValid 0.1表单验证 代码打包下载
Jun 08 Javascript
深入document.write()与HTML4.01的非成对标签的详解
May 08 Javascript
JS+CSS实现自适应选项卡宽度的圆角滑动门效果
Sep 15 Javascript
学习JavaScript正则表达式
Nov 13 Javascript
JavaScript reduce和reduceRight详解
Oct 24 Javascript
jquery仿苹果的时间/日期选择效果
Mar 08 Javascript
用js将long型数据转换成date型或datetime型的实例
Jul 03 Javascript
解析vue中的$mount
Dec 21 Javascript
vue.js 实现图片本地预览 裁剪 压缩 上传功能
Mar 01 Javascript
使用Vue自定义指令实现Select组件
May 24 Javascript
React+Antd+Redux实现待办事件的方法
Mar 14 Javascript
JavaScript常用工具函数汇总(浏览器环境)
Sep 17 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
php,不用COM,生成excel文件
2006/10/09 PHP
PHP使用PDO连接ACCESS数据库
2015/03/05 PHP
PHP+MySql实现一个简单的留言板
2020/07/19 PHP
js查找某元素中的所有图片地址的方法
2014/01/16 Javascript
jQuery的position()方法详解
2015/07/19 Javascript
js实现显示当前状态的导航效果代码
2015/08/28 Javascript
JS 对象(Object)和字符串(String)互转方法
2016/05/20 Javascript
基于jQuery实现页面搜索功能
2020/03/26 Javascript
jQuery简单创建节点的方法
2016/09/09 Javascript
ng2学习笔记之bootstrap中的component使用教程
2017/03/09 Javascript
NodeJS实现微信公众号关注后自动回复功能
2017/05/31 NodeJs
js微信应用场景之微信音乐相册案例分享
2017/08/11 Javascript
layUI实现三级导航菜单效果
2019/07/26 Javascript
python字典get()方法用法分析
2015/04/17 Python
python迭代器与生成器详解
2016/03/10 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
python+pygame简单画板实现代码实例
2017/12/13 Python
删除python pandas.DataFrame 的多重index实例
2018/06/08 Python
详解Python解决抓取内容乱码问题(decode和encode解码)
2019/03/29 Python
pandas基于时间序列的固定时间间隔求均值的方法
2019/07/04 Python
TensorFlow实现简单的CNN的方法
2019/07/18 Python
详解Python是如何实现issubclass的
2019/07/24 Python
Python3中FuzzyWuzzy库实例用法
2020/11/18 Python
Nuts.com:优质散装,批发坚果、干果和巧克力等
2017/03/21 全球购物
在印度上传处方,在线订购药品:Medlife
2019/03/28 全球购物
俄罗斯Sportmarket体育在线商店:用于旅游和户外活动
2019/11/12 全球购物
高中生学习总结的自我评价范文
2013/10/13 职场文书
业务部主管岗位职责
2014/01/29 职场文书
经典演讲稿汇总
2014/05/19 职场文书
就业协议书盖章的注意事项
2014/09/28 职场文书
2015年社区精神文明工作总结
2015/05/26 职场文书
长江七号观后感
2015/06/11 职场文书
安全教育培训心得体会
2016/01/15 职场文书
python如何做代码性能分析
2021/04/26 Python
Django路由层如何获取正确的url
2021/07/15 Python
MySQL空间数据存储及函数
2021/09/25 MySQL