❤ 项目配置 permission.ts

❤ 项目配置 permission.ts

逻辑:

1、导入进度条、路由、element-plus组件
2、定义白名单
3、

import NProgress from "../progress"; //导入进度条
import router from '../../router' //导入路由
import {ElMessage } from 'element-plus' //Elmentui的提示信息
// 白名单,
const whiteList =['/home', '/','/login','/applylist','/rules','/about','/main','/admin','/spefevue']; //定义白名单

// 路由守卫
router.beforeEach((to, from, next) => {
    console.log(to, from, next,'路由加载中!');
    NProgress.start(); //开启进度条
     if (to.matched.length ===0) {   //如果未匹配到路由
        from.name ? next({ name:from.name }) : next('/');   //如果上级也未匹配到路由则跳转登录页面,如果上级能匹配到则转上级路由
     } else{
        //如果未匹配到路由--检测白名单
        if (whiteList.indexOf(to.path) !== -1) {
          // 在免登录白名单,直接进入
          console.log('白名单进入!');
          next()
          // window.location.href = 'http://wzfg.jrdsj.com';
          // window.location.href = 'http://www.wuzhengai.com';
        }else{
          console.log('不在白名单--验证token');
          //token验证--获取 token
          const token = localStorage.getItem('Authorization'); 
          //token 不存在
	      if (token === null || token === '') {
	        ElMessage.error('您还没有登录,请先登录');
	        next('/home');
	      } else {
	        next();
	      }
          // console.log('重定向!');
          // next('/');//不满足要求重定向
       }
    }
});
router.afterEach(() => {
    console.log('路由加载完成!');
    NProgress.done(); //完成进度条
});
export  {permission}
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林太白

感谢打赏,你拥有了我VIP权限

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值