vue通过本地token控制用户登录前后的权限

前言

此文章是我自己在开发中遇到的一些权限问题,然后主要是用了一种别的方法,这种方法十分简单,通俗易懂,代码简介,一看就会,上代码

上代码

在main.js中加入

import router from './router'

//利用钩子函数来控制router的走向
router.beforeEach((to, from, next) => {
  let token = localStorage.getItem("token");//登陆成功之后存储的token值
  //以下是站在用户角度的4种情况,我为大家一一列举
  if (token && to.path == '/login') {
  //当token有值时并且路径是'/login'时,把跳转的路径变为空,形成刷新(这种情况是用户手动修改路径才会有的情况) 
    next('') //刷新的意思
  } else if (token && to.path != '/login') { 
  // 当token有值时并且路径不是在'/login'时,这个就是正常登录后的情况,所以正常运行
    next()  //正常运行当前路径
  }else if(!token&&to.path=='/login'){  
  // 当token无值时并且路径在'/login'时,这个就是未登录的状态,而且当前在登录页,所以正常运行登录页
    next()  //正常运行当前路径
  }else if(!token&&to.path!='/login'){  
  //当token无值时并且路径没在'/login'时,这个情况是退出登录后页面进行跳转,跳转到登录页
    next('./login') //这种情况是要跳到登录页
  }
});

new Vue({
  render: h => h(App),
  router
}).$mount('#app')

结语

直接复制过去就可以使用,在注意一下你登录后有没有存token,还有登录的名字(login不要写错了),希望这些代码对你有所帮助

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值