角色权限的设置

news2024/11/17 7:45:02

1.先在登录页把角色存起来
2.然后分成普通管理员路由和超级管理员路由的动态路由
3.在导航栏这边接收循环路由以及文字等
4.给路由加属性看是否展示在导航栏ismenu
5.在templat标签上面循环
在这里插入图片描述

<template>
  <div class="asders">
    <el-aside width="200px">
      <div class="boxbody">
        <div>源码外卖</div>
        <el-switch v-model="isCollapse" :active-value="true" :inactive-value="false"></el-switch>
      </div>

      <el-menu
        :collapse="isCollapse"
        router
        unique-opened
        :default-active="$router.path"
        class="el-menu-vertical-demo"
        background-color="rgba(220,38,38,0.2)"
        text-color="#fff"
        active-text-color="#ffd04b"
      >
      这里拿一个隐藏标签在上面循环
        <template v-for="(v,i) in routers">
        这个是一级菜单循环,v-if判断你的子标签只有一个  就用一级路由
          <el-menu-item :index="v.path" :key="i" v-if="v.children.length<=1">
            <i class="el-icon-menu"></i>
            <span slot="title">{{v.meta.title}}</span>
          </el-menu-item>


     这是二级路由他的子标签  超过一个 就可以用  所以用 v-else
          <el-submenu :index="v.path" v-else>
            <template slot="title">
              <i class="el-icon-location"></i>
              <span>{{v.meta.title}}</span>
            </template>
            
            这个返回出来的  就是 v.children里面的路由
            <el-menu-item-group>
              <el-menu-item
              
              v.children要过滤不然全都显示  
                v-for="(v2,i2) in v.children.filter(v=>v.ismenu)"
                :key="i2"
                :index="v2.path"
              >{{v2.meta.title}}</el-menu-item>
            </el-menu-item-group>
          </el-submenu>
        </template>
      </el-menu>
    </el-aside>
  </div>
</template>

<script>
import { showrouters } from "@/router/index";
export default {
  data() {
    return {
      isCollapse: false,
      routers: []
    };
  },
  methods: {
    change() {
      this.isCollapse = !this.isCollapse;
    },
    handleResize() {
      console.log(document.body.offsetWidth);
      if (document.body.offsetWidth <= 700) {
        this.isCollapse = true;
      } else {
        this.isCollapse = false;
      }
    }
  },
  created() {
    this.handleResize;
    window.addEventListener("resize", this.handleResize);
    this.routers = showrouters().filter(v => v.ismenu);
    console.log(this.routers);
  }
};
</script>

<style lang="scss" scoped>
.asders {
  height: 100%;
  background: url("../../assets/OIP-C.jpg") center, center/cover;
}
.el-menu {
  height: 100%;
  transition: all linear 0.3s;
}
.boxbody {
  height: 50px;
  display: flex;
  padding: 30px;
  align-items: center;

  background: url("../../assets/OIP-C.jpg") center center/cover;
  div {
    text-align: center;
    color: rgb(83, 50, 50);
    font-size: 18px;
    font-weight: bold;
  }
}
.el-aside {
  color: #333;
  text-align: center;
  line-height: 200px;
  height: 100%;
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/797796.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mybatis-Flex

一、Mybatis-Flex是什么&#xff1f; Mybatis-Flex 是一个优雅的 Mybatis 增强框架&#xff0c;它非常轻量、同时拥有极高的性能与灵活性。我们可以轻松的使用 Mybaits-Flex 链接任何数据库&#xff0c;其内置的 QueryWrapper^亮点 帮助我们极大的减少了 SQL 编写的工作的同时…

mfc140.dll丢失的多种解决方法分享,最全面的mfc140.dll文件修复手法

其实想要修复丢失的mfc140.dll文件&#xff0c;还是非常的简单的&#xff0c;我们需要针对其丢失的原因&#xff0c;去做针对性的修复&#xff0c;并不是所有的修复手段都是有用的&#xff01;这点我们必须了解清楚&#xff0c;好了下面我们一起来了解一下mfc140.dll丢失的多种…

神码ai火车头伪原创插件怎么用【php源码】

大家好&#xff0c;本文将围绕python绘制烟花特定爆炸效果展开说明&#xff0c;如何用python画一朵花是一个很多人都想弄明白的事情&#xff0c;想搞清楚用python画烟花的代码需要先了解以下几个事情。 1、表白烟花代码 天天敲代码的朋友&#xff0c;有没有想过代码也可以变得…

SSH连接Windows「用户名与密码的坑」及解决方案

文章目录 问题方案 问题 当我们想要通过 SSH 连接 Windows 来进行一些远程办公的时候&#xff0c;通常需要进行以下准备工作&#xff1a; 在 Windows 上安装 OpenSSH 服务器 在系统的「设置>应用>可选功能」中搜索关键词「SSH」即可找到该应用并下载安装 确定 Windows…

java:匿名内部类

匿名内部类 匿名内部类一般作为一个参数传递给方法 首先不作为参数 同时可以让代码更简化&#xff0c;直接调用go方法&#xff0c;将S1替换&#xff0c;也就是将内部类直接作为参数&#xff0c;传递给方法 内部类不是主动去实现而是被动实现的

Zabbix下载安装过程中的报错问题与解决方案

目录 系统环境1. switch-to 指令错误2. 缺少的组或模块 : php:7.4 / perl:5.26&#xff0c;以及衍生出来的一系列依赖模块缺少的问题3. 初始化架构和数据时缺失server.sql.gz&#xff0c;无法正常导入4. 启动Zabbix server和agent进程时无法正常启动&#xff0c;但也没有其他问…

Date时间相关语句

SimpleDateFormat格式化 Date date new Date(); /*注意&#xff0c;dd需要小写&#xff0c;另外&#xff0c;需要注意的是&#xff0c;匹配符字母不能随意写*/ /*获取date*/ SimpleDateFormat sdf1 new SimpleDateFormat("YYYY年MM月dd日 "); SimpleDateFormat sd…

轻松构建数字孪生场景,限时有奖搜集用户体验活动

作为程序员或者技术开发者&#xff0c;无论是学习还是工作&#xff0c;前沿的技术的开发和学习是不可缺少的&#xff0c;在信息高速的发展越来越多的技术被发明和创造&#xff01; 我们应该与时俱进&#xff0c;去接触更多的科技技术&#xff0c;拓展自己的知识盲区&#xff0c…

C# Assembly 反射动态加载程序集(动态加载Dll)Demo

No1、本Demo 定义了一个接口IserviceToolFrame&#xff0c;接口中有一个方法Run。 No2、在另外两个工程中&#xff0c;分别定义两个类serviceToolCatComplete、serviceToolDogComplete实现接口IserviceToolFrame。 No3、控制台程序通过动态加载Dll的方式去调用IserviceToolFram…

消息队列的两种消费模式

第一种&#xff1a;点对点模式 消息发送者生产消息发送到消息队列中&#xff0c;然后消息接收者从消息队列中取出并且消费消息。消息被消费以后&#xff0c;消息队列中不再有存储&#xff0c;所以消息接收者不可能消费到已经被消费的消息。 点对点模式特点&#xff1a; 每个消息…

git的clone,上传与upstream同步

文章目录 clone同步 clone clone他人项目&#xff0c;git到自己的项目 rm -rf .git .git存放原始项目的日志信息&#xff0c;这里需要添加自己的日志信息&#xff0c;需要删除重写。也可手动删除 git init 初始化文件&#xff0c;依据本地日志信息生产.git文件 git add 目标文…

生物信息学_玉泉路_课堂笔记_03 第三章 多序列比对与系统发生树构建

&#x1f345; 课程&#xff1a;生物信息学_玉泉路_课堂笔记 中科院_2022秋季课 第一学期 &#x1f345; 个人笔记使用 &#x1f345; 2023/7/6 一、多序列比对简介 1.1 简介 1.2 多序列比对方法 1.2.1 启发式&#xff1a;渐进法 1.2.2 软件 ClustalW/X 1.2.3 启发式&…

安装git创建版本库

安装git 安装教程参考链接 https://blog.csdn.net/mukes/article/details/115693833 按照链接流程安装 安装完成后&#xff0c;还需要最后一步设置&#xff0c;在命令行输入&#xff1a; &#xff08;用户名和邮箱在账号中查找&#xff09; $ git config --global user.name “…

一套Java/.Net+Vue前后端分离的低代码快速开发框架

项目简介 这是一个基于Java Boot/.Net Core构建的简单、跨平台快速开发框架。前后端封装了上千个常用类&#xff0c;方便扩展&#xff1b;集成了代码生成器&#xff0c;支持前后端业务代码生成&#xff0c;实现快速开发&#xff0c;提升工作效率&#xff1b;框架集成了表单、报…

特定Adreno GPU的Android设备发生冻屏问题

1&#xff09;特定Adreno GPU的Android设备发生冻屏问题 ​2&#xff09;Unity版本升级后&#xff0c;iOS加载UnityFramework bundle闪退 3&#xff09;关于RectTransfrom.rect在屏幕空间中表示的相关问题 4&#xff09;Unity Mesh泄露问题 这是第345篇UWA技术知识分享的推送&a…

flex布局篇——justify-cont:center/space-between/space-around最后一行靠左

正常来说,用到 justify-cont:space-between时,最后一行元素是这样的 会向两端对齐。为了解决这个办法,可用gap与伪类进行纠正: <view class="box"><view class="bbox" wx:for="{{50}}" wx:key="this"><view class=…

CitHub Copilot 基于GPT的代码生成模型

CitHub Copilot 基于GPT的代码生成模型 介绍 GitHub Copilot X 是 GitHub 与 OpenAI 合作创建的&#xff0c;这是世界上第一个使用 OpenAI Codex 模型开发的大规模生成式人工智能开发工具&#xff0c;可以作为vscode 和jetbrains 插件安装 价格 试用30天免费&#xff0c;10…

3分钟学会设计模式 -- 单例模式

►单例模式 ►使用场景 在编写软件时&#xff0c;对于某些类来说&#xff0c;只有一个实例很重要。例如&#xff0c;一个系统中可以存在多个打印任务&#xff0c;但是只能有一个正在工作的任务&#xff1b;一个系统中可以多次查询数据库&#xff0c;但是只需要一个连接&#x…

rancher平台上强制删除pod服务操作

背景&#xff1a; 在日常paas平台运维工作中需要对rancher平台进行巡检的工作&#xff0c;在巡检时发现在rancher管理界面无法删除异常的pod服务&#xff0c; 处理&#xff1a; 像这样的情况就是k8s集群的pod无法通过默认的方式去删除掉pod服务&#xff0c;这时候只能是手工强制…

24岁女神 上位机还是前端?何去何从?

首先&#xff0c;我要澄清一点&#xff0c;无论是上位机开发还是前端开发&#xff0c;性别并不应该是决定因素&#xff0c;而是应该根据个人的兴趣、能力和适应性来选择职业方向。在工控行业和物联网行业&#xff0c;上位机开发确实有一定的需求。由于上位机开发更注重逻辑和抽…