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

vue2.x项目从0到1(七)之用户权限

此章节偏理论知识  

对于小一点的项目  比如说角色都是平级的  那我们直接像之前  vue2.x项目从0到1(二)之后台管理侧边栏(动态渲染路由以及高亮)_vue动态渲染侧边栏_关忆北_的博客-CSDN博客这样渲染就行了   但是一旦项目大了   就比如:有管理或者是经理  员工这种  有职级层次划分的项目就不好这么渲染了   因为前端做这种权限判断的话 要写大量的  v-if  而请求后端接口返回路由表的话  明显就方便很多

我们从项目登录页进来  肯定要调取登录接口吧  在这里我们获取到用户的  token  以及用户信息 userInfo 我们可以将这些东西储存到  vuex 里或者是 localStorage  里  两个都存也行  看个人习惯  然后每次请求的时候要把  token  添加到请求头里一起携带传过去  这个时候后端就是根据  token  知道是哪个用户在请求数据  从而返回相对应的路由列表  

 

稍微大点的项目  现在用的基本都是框架  比如:若依,他们都有那种  系统管理  用户管理 去配置这些配置项  配置好后  后端才能返还给你  配置好后在侧边栏文件里写上

created() {// 获取侧边栏的接口menuTree().then(({data}) => {this.tree = data.tree})// 高亮为当前路由所在this.defaultActive = this.$route.name;
},
<template><div class="aside"><div class="logoname" v-if="!isCollapse">医疗机构后台管理系统</div><div class="logoname" style="font-size: 30px" v-else>医</div><el-scrollbar :vertical="true" style="height: calc(100vh - 80px);margin-right: 0;overflow: hidden"><div class="wrap"><el-menu :key="update" unique-opened :default-active="defaultActive" background-color="#000D3C" text-color="#fff"active-text-color="#fff" :collapse="isCollapse" active-background-color="#409EFF"><div v-for="(item, index) in tree" :key="index"><el-submenu :index="item.menuName" v-if="item.children"><template slot="title"><i class="el-icon-menu"></i><span v-show="!isCollapse">{{ item.menuName }}</span></template><el-menu-item v-for="(nth, idx) in item.children" :key="idx" :index="nth.menuURL" @click="goRouter(nth)">{{nth.meta.title }}</el-menu-item></el-submenu><el-menu-item :index="item.menuURL" v-else @click="goRouter(item)"><i class="el-icon-menu"></i><span slot="title">{{ item.menuName }}</span></el-menu-item></div></el-menu></div></el-scrollbar></div>
</template>

上方 v-for 渲染 tree 里的数据即可做到用户权限控制

http://www.lryc.cn/news/135859.html

相关文章:

  • 上传镜像到阿里云的ACR
  • ahooks.js:一款强大的React Hooks库及其API使用教程(五)
  • MySQL TCL 事务控制
  • 【Ubuntu】从Graylog到Grafana Loki:构建更强大的网络设备管理和监控系统
  • [JavaWeb]【八】web后端开发-Mybatis
  • Flink源码之Checkpoint执行流程
  • 【工具使用】Git的使用
  • 无涯教程-PHP Installation on Windows NT/2000/XP with IIS函数
  • EureKa快速入门
  • Sectigo EV代码签名申请步骤
  • 生信学院|08月25日《SOLIDWORKS PDM帮助企业对设计数据版本的管理应用》
  • vue页面转pdf后分页时文字被横向割裂
  • 数据结构——队列(C语言)
  • WGS84地球坐标系,GCJ02火星坐标系,BD09百度坐标系简介与转换 资料收集
  • 【面试题】前端面试复习6---性能优化
  • 隧道HTTP具备的条件
  • 部署FTP服务(二)
  • 缓存的变更(JVM本地缓存->Redis分布式缓存)
  • springMVC Unix 文件参数变更漏洞修复
  • 【LeetCode】494.目标和
  • KaiwuDB 荣获哈佛商业评论 2023“高能韧性团队奖”
  • 删除ubuntu开始菜单中的图标
  • 信息系统项目管理基础知识学习笔记 - IT 治理基础 - IT治理的驱动因素
  • 8月21-22日上课内容 第一章 MySQL数据库初始
  • 等级查询发布助手
  • 手搭手入门MyBatis-Plus
  • AI 绘画Stable Diffusion 研究(十一)sd图生图功能详解-美女换装
  • Servlet+JDBC实战开发书店项目讲解第14讲:订单管理功能
  • 基于Linux操作系统中的shell脚本
  • 8.22笔记