当前位置: 首页 > news >正文

❤ VUE3 项目路由拦截器配置(二)

❤ VUE3 项目 路由拦截器进一步 配置

路由拦截抽离为单个模块permission.ts

在这里插入图片描述

路由配置规则

白名单(直接进入)
PC页面和PC子页面(直接进入)

后台页面(验证token )
没有token=> 后台登录页面
有token=> 后台页面

import NProgress from "../progress";
import router from '../../router'
import { ElMessage } from 'element-plus' //Elmentui的提示信息NProgress.configure({ showSpinner: false }); // 显示右上角螺旋加载提示
const whiteList = ['/','/pc','/register', '/login', '/applylist', '/rules', '/pclist', '/about', '/main', '/spefevue']; //定义白名单// 路由守卫
router.beforeEach((to, from, next) => {console.log(to, from, next, '路由加载中!');NProgress.start(); //开启进度条// 将所有的Pc页面添加进入白名单---未采用// 在免登录白名单,直接进入--不检测上下级if (whiteList.indexOf(to.path) !== -1) {console.log('白名单进入!');next()} else {if(to.matched.length!=0){console.log(to.matched.map((item)=>item.name).indexOf('pc')!=-1,'循环');if(to.matched.map((item)=>item.name).indexOf('pc')!=-1){console.log('PC子页面进入!');next()}else{next('/')}}else {console.log('不在白名单-非PC页面--验证token');// 登录if (localStorage.getItem('login')) {console.log('token账号密码登录!');next(); //登录--继续} else {if (to.name == 'admin') {console.log('需要登录');next('/login')} else {console.log(localStorage.getItem('login'), '未匹配');next('/') //不满足要求重定向pc}}}}
});
router.afterEach(() => {console.log('路由加载完成!');NProgress.done(); //完成进度条
});
export { permission }
http://www.lryc.cn/news/118669.html

相关文章:

  • Filament 如何自定义登录页面
  • 百度智能云“千帆大模型平台”最新升级:接入Llama 2等33个模型!
  • [保研/考研机试] KY129 简单计算器 浙江大学复试上机题 C++实现
  • 推出 Elasticsearch 查询语言 (ES|QL)
  • 机器学习 day32(神经网络如何解决高方差和高偏差)
  • Web前端之NodeJS、Vue
  • 冠达管理:银行定增是利好还是利空?
  • 背上小书包准备run之TypeScript篇
  • 什么是绩效管理?绩效管理包括哪些内容?
  • Java基础练习八(二维数组)
  • Biopython序列比对
  • 无法坚持运动?解密肠道菌群影响运动积极性
  • 4-5-tablewidget
  • 前端基础第一天-html-综合案例
  • PDF Expert 3.3 for mac
  • 【腾讯云 Cloud Studio 实战训练营】深度体验 | 使用腾讯云 Cloud Studio 快速构建 Vue + Vite 完成律师 H5 页面
  • Word转PDF在线转换如何操作?分享转换技巧
  • 只需5步 真·双开电脑版微信
  • 如何将JSON字符串转化成对象
  • 计算机网络 运输层 UDP和TCP对比
  • Zebec Protocol 将进军尼泊尔市场,通过 Zebec Card 推动该地区金融平等
  • stm32项目(8)——基于stm32的智能家居设计
  • 边缘计算:连接智能世界的变革之力
  • 多货币多汇率跨境电子商城建设(仓储管理、网络安全)
  • 笔记,ubuntu22安装header问题
  • 领航优配:股票分红为什么股价下降?分红有什么好处?
  • Spark(38):Streaming DataFrame 和 Streaming DataSet 转换
  • 设计模式之六:命令模式(封装调用)
  • git删除历史提交中的某些文件
  • Java List(列表)