vue格式化动态权限菜单

动态权限菜单

    1. 调用菜单接口获取菜单列表数据
    1. 使用elementPlus组件库实现左侧菜单栏
    1. 格式化数据显示到菜单栏
      在这里插入图片描述
  1. 调用菜单接口获取菜单列表数据
    在这里插入图片描述
  2. 使用elementPlus组件库实现左侧菜单栏
    将菜单定义成一个组件, , 在home.vue 页面使用
    在这里插入图片描述
    在这里插入图片描述

3. 格式化数据显示到菜单栏

菜单接口拿到的数据
在这里插入图片描述
将path路径与组件对应起来,映射

  • 定义组件
    在这里插入图片描述

格式化动态菜单

  • 遍历路由数组;
  • 判断有无children,并且是否是数组类型
  • 映射component组件
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

角色管理

需求分析:

角色列表

定义一个全局指令,自定义指令,实现资源按钮封装

注意执行顺序:

封装插件—实现按钮权限

插件 (Plugins) 是一种能为 Vue 添加全局功能的工具代码。可以封装全局指令、全局插件、全局组件

在这里插入图片描述
在这里插入图片描述

插件使用方式

1、新建文件

const myPlugin = {
  install(app, options) {
    // 配置此应用
  }
}

无感刷新

认识token
在这里插入图片描述
在这里插入图片描述

token的时效性问题

在这里插入图片描述

利用Access/ Refresh Token 来平衡Token安全性和用户体验

以酒店房卡为例:
请添加图片描述

实现

思路:即短token用于请求,短token失效后,通过长token刷新短token,再次用短token访问
在这里插入图片描述

后端设计:

前端设计:
1、定义文件 在这里插入图片描述
2、Ligin.vue 中引入 长短token;将长短token保存在localstorong

3、网络错误处理封装在响应拦截器里
打印console.log(response);
在这里插入图片描述

在这里插入图片描述

优化无感刷新

实现自动刷新,无需点击其他项,在点击当前项,才能出现数据—即无感
短token过期,保存当前请求,刷新token,重新发起请求
需要一个回调函数才能拿到请求config的内容

实现步骤:
1、定义刷新的文件—文件里定义刷新短token

在这里插入代码片

2、

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值