el-breadcrumb面包屑详解

news2024/12/22 23:10:04

el-breadcrumb面包屑详解

封装面包屑组件

<template>
  <div class="crumb">
    <el-breadcrumb separator="/">
      <template v-for="(item,index) in levelList">
        <el-breadcrumb-item :key="'item_' + index">{{item.name}}</el-breadcrumb-item>
      </template>
    </el-breadcrumb>
  </div>
</template>

<script>
export default {
  data() {
    return {
      levelList: [],
    }
  },
  mounted() {
    this.getCrumb()
  },
  methods: {
    getCrumb() {
      console.log(this.$route.meta, 'this.$route.meta');
      if (this.$route.meta && this.$route.meta.crumbs) {
        this.levelList = this.$route.meta.crumbs
        console.log(this.levelList, 'this.levelList');
      }
    },
  }
}
</script>

<style lang="scss" scoped>
.crumb {
  height: 30px;
  line-height: 30px;
  margin: 20px 30px;
}
//设置最后一级的面包屑颜色
::v-deep .el-breadcrumb__item:last-child .el-breadcrumb__inner{
color: #2386ee;
}
</style>

组件中使用

<template>
  <div class="home">
    <Crumb/>
  我是首页
  </div>
</template>

<script>
import Crumb from '@/components/crumbCom.vue'
export default {
  name: 'HomeView',
  components:{
    Crumb
  },
}
</script>

路由配置

如果是一级菜单,crumbs中只有一个对象,name就是自己的菜单名称

在这里插入图片描述

效果如下

在这里插入图片描述

如果是二级菜单,crumbs中就是两个对象,第一个对象的名称是自己的一级菜单名称,第二个对象的名称就是自己的名称,路径都是当前页面的路径
在这里插入图片描述
效果如下

在这里插入图片描述
三次四级依此类推

import Vue from 'vue'
import VueRouter from 'vue-router'
import HomeView from '@/views/HomeView.vue'
import HeaderView from '../components/HeaderView.vue'

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    name: 'home',
    meta:{
      title:'首页',
      crumbs:[{path:'',name:'首页'}],
    },
    components:{
      header:HeaderView,
      default:HomeView
    },
  },
  {
    path: '/about',
    name: 'about',
    // route level code-splitting
    // this generates a separate chunk (about.[hash].js) for this route
    // which is lazy-loaded when the route is visited.
    component: () => import(/* webpackChunkName: "about" */ '../views/AboutView.vue')
  },
  //登录
  {
    path: '/login',
    name: 'Login',
    component: () => import('@/views/loginView.vue')
  },
  // 用户管理
  {
    path: '/user',
    name: 'User',
    meta:{
      title:'用户管理',
      crumbs:[{path:'/user',name:'系统管理'},{path:'/user',name:'用户管理'}],
    },
    components:{
      header:HeaderView,
      default:() => import('@/views/system/userView.vue')
    },
  },
  // 角色管理
  {
    path: '/role',
    name: 'Role',
    meta:{
      title:'角色管理',
      crumbs:[{path:'/role',name:'系统管理'},{path:'/role',name:'角色管理'}],
    },
    components:{
      header:HeaderView,
      default:() => import('../views/system/roleView.vue')
    },
  },
  // 组织机构管理
  {
    path: '/dept',
    name: 'Dept',
    meta:{
      title:'组织机构管理',
      crumbs:[{path:'/dept',name:'系统管理'},{path:'/dept',name:'组织机构管理'}],
    },
    components:{
      header:HeaderView,
      default:() => import('../views/system/deptView.vue')
    },
  },
  // 飞行器管理
  {
    path: '/plane',
    name: 'Plane',
    meta:{
      title:'飞行器管理',
      crumbs:[{path:'/plane',name:'基础数据'},{path:'/plane',name:'飞行器管理'}],
    },
    components:{
      header:HeaderView,
      default:() => import('../views/plane/planeView.vue')
    },
  },
  // 机型管理
  {
    path: '/planeType',
    name: 'PlaneType',
    meta:{
      title:'机型管理',
      crumbs:[{path:'/planeType',name:'基础数据'},{path:'/planeType',name:'机型管理'}],
    },
    components:{
      header:HeaderView,
      default: () => import('../views/plane/planeType.vue')
    },
  },
  // 空域管理
  {
    path: '/airSpace',
    name: 'AirSpace',
    meta:{
      title:'空域管理',
      crumbs:[{path:'/airSpace',name:'基础数据'},{path:'/airSpace',name:'空域管理'}],
    },
    components:{
      header:HeaderView,
      default:  () => import('../views/airspaceLine/airSpace.vue')
    },
  },
  // 航线管理
  {
    path: '/line',
    name: 'Line',
    meta:{
      title:'航线管理',
      crumbs:[{path:'/line',name:'基础数据'},{path:'/line',name:'航线管理'}],
    },
    components:{
      header:HeaderView,
      default: () => import('../views/airspaceLine/lineView.vue')
    },
  },
]

const router = new VueRouter({
  mode: 'history',
  base: process.env.BASE_URL,
  routes
})

export default router

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

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

相关文章

SQL Server 2012数据库允许远程连接设置

1、打开 SQL Server Management Studio 2、打开 Security 按照如下设置&#xff0c;然后点确定 3、打开SQL Server Configuration ManagerMent 4、如下图都设置为Enabled 6、sql server重启

寻找最佳同步云盘:如何选择适合您的高效、可靠的云端存储方案?

同步云盘是集备份、同步、共享于一体的软件&#xff0c;备受用户青睐。在这个信息化的时代&#xff0c;我们经常需要在不同的设备之间共享文件&#xff0c;而同步云盘正可以帮助我们在多台设备之间同步文件。不过目前市面上同步云盘众多&#xff0c;我们该如何选择同步云盘呢&a…

JMeter常用业务知识和组件(5)

这里写目录标题 一、信息头管理器1案例、测试开发平台登录接口2案例、测试平台获取测试用例接口 二、HTTP请求默认值案例1&#xff1a;实现登录接口测试 三、Cookie管理器&#xff08;有问题&#xff09;案例1&#xff1a;开源项目TPshop商城登录案例案例2&#xff1a;(有问题)…

双向复制粘贴半监督医学图像分割

文章目录 Bidirectional Copy-Paste for Semi-Supervised Medical Image Segmentation摘要本文方法实验结果 Bidirectional Copy-Paste for Semi-Supervised Medical Image Segmentation 摘要 在半监督医学图像分割中&#xff0c;存在标记数据与未标记数据分布不匹配的问题。…

Python基础 —— 变量

〇、概述 变量&#xff0c;正如其字面意思所言&#xff0c;即 *“变化的量*”&#xff0c;通过变量&#xff0c;可以将数据临时存储。 这就好像图书馆的书架&#xff0c;存放着一本本包含着很多知识的书。为了方便查找&#xff0c;图书馆里的每本书都有编号&#xff0c;书架也…

#VCS# 关于VCS 编译选项:+vcs+initreg+random的理解(3)回头是岸

前段时间,有时间整理了一下关于+vcs+initreg+random 编译和仿真选项的心得,草草写了两篇笔记。自觉得对该选项已经掌握了,后来实际应用中再次触及到了该知识点,不想又卡壳了。今天,继续追加一篇,希望对大家能有所帮助!不正之处,请指正。 对于上述规则rule#2和 rule#3,…

DM数据库迁移,从DM到DM

1、打开DM数据迁移工具 2、新建工程 3、新建迁移 4、下一步 如果连接不上可能需要指定驱动

ChatGPT Prompting开发实战(一)

第7章 ChatGPT Prompting开发实战 7.1 Prompting在LangChain框架中的应用 本节跟大家讲提示工程(Prompt Engineering),主要基于工业级的源码以及具体的项目,无论是工程人员,还是不具有技术背景的人员,大家多少都听说过提示词,或者频繁使用过,简单而言,当我们使用OpenA…

品牌低价监测要注意哪些方面

对于所有销售渠道的价格&#xff0c;品牌一般都会有相应的标准&#xff0c;比如会设置建议零售价&#xff0c;这也是为了渠道间的合理发展&#xff0c;让品牌能够长期更好的生存&#xff0c;所以设置了相应价格线的产品&#xff0c;品牌当然不想出现低价产品链接。所以针对价格…

关于旋转向量和罗德里格斯旋转公式

使用cv2.Rodrigues函数即可实现 import cv2 import numpy as np # 相机标定 ret, rvec, tvec, idx, std_dev cv2.calibrateCamera(...) # 将rvec转换为旋转矩阵 R cv2.Rodrigues(rvec) # 将旋转矩阵转换为欧拉角 roll, pitch, yaw cv2.decomposeHomographyMat(R…

利用picard构建参考基因组的dict索引文件

最近&#xff0c;自己在利用gatk中的Haplotypecaller进行calling-snp时&#xff0c;出现报错&#xff1a; Runtime.totalMemory()2304245760 ***********************************************************************A USER ERROR has occurred: Fasta dict file file:///da…

C# WPF通过反射及Ioc容器加载并显示其它项目界面(精品)

概述 这节主要通过发射Caliburn.Micro自带的ioc容器实现加载并显示其它项目中的界面.实现效果如下&#xff1a; 具体实现 -. ①首先在引导程序页面通过发射加载类库&#xff0c;并将视图注入ioc容器&#xff0c;这里为了实现解耦合注入了ICommonBasePage接口类型&#xff1a; …

手把手教你安装Zookeeper 及可视化插件ZooInspector、ZKUI

手把手教你安装Zookeeper 一、下载Zookeeper二、配置并启动1. 服务端配置2. 启动服务端3. 客户端验证 三、图形化管理工具1. ZooInspector2. ZKUI 一、下载Zookeeper 环境预备&#xff1a;请确保JDK正确安装 我们先进入 官网发布页面 根据推荐&#xff0c;推荐直接使用最近…

Web漏洞-敏感信息泄露-后台地址爆破

实验目的 通过爬虫去爬取网站目录&#xff0c;然后将爬取到目录进行展现&#xff0c;同时也可以匹配关键目录&#xff0c;如&#xff1a;admin,manger等。 实验环境 实验环境&#xff1a;kali 实验工具&#xff1a;Dirb 实验原理 默认情况下后台地址是不应被搜索引擎爬取到…

回归预测 | MATLAB实现WOA-DNN鲸鱼算法优化深度神经网络的数据多输入单输出回归预测

回归预测 | MATLAB实现WOA-DNN鲸鱼算法优化深度神经网络的数据多输入单输出回归预测 目录 回归预测 | MATLAB实现WOA-DNN鲸鱼算法优化深度神经网络的数据多输入单输出回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 回归预测 | MATLAB实现WOA-DNN鲸鱼算法优化深度…

window11系统基于 wsl2 安装Linux发行版ubuntu,并安装docker及vscode

前景介绍&#xff1a; WSL是“Windows Subsystem for Linux”的缩写&#xff0c;顾名思义&#xff0c;WSL就是Windows系统的Linux子系统&#xff0c;其作为Windows组件搭载在Windows10周年更新&#xff08;1607&#xff09;后的Windows系统中。 既然WSL是“子系统”&#xff…

数据库视图与索引经典题

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 视图与索引视图&#xff1a;定义视图创建视图删除视图查询视图视图的作用 索引索引的概念索引的类型设计索引 视图与索引 视图&#xff1a; 视图是从一个或几个基…

RabbitMQ系列(20)--RabbitMQ备份交换机

前言&#xff1a;上一篇文章我们提到当交换机确认消息失败或者交换机发送消息到队列失败&#xff0c;都可以通过回调方法让生产者重新发送消息&#xff0c;除此之外另一种方法就是通过备份交换机的方式保证消息的不丢失&#xff0c;当生产者无法把消息投递给交换机&#xff0c;…

剑指 Offer 67: 把字符串转换成整数

这道题使用的办法是先判断是否有符号&#xff0c;把空格消除&#xff0c;然后用一个标志位判断是否为负数。当遇到这种问题记得调用Integer中的MIN_VALUE和MAX_VALUE这样最方便。 class Solution {public int strToInt(String str) {//去前后空格char[] chars str.trim().toCh…

SpringMVC JDK17 SpringFramework6x Tomcat10遇到的找不到资源404问题以及SercletException

发生资源找不到异常 本人使用Tomcat9 与 jdk17 时无任何冲突可以随便使用 Springframework6x系列 对应的应该时tomcat10版本 在使用过程中遇到两个问题 1.依赖问题 <dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</a…