VUE+elementui面包屑实现动态路由详解


Posted in Javascript onNovember 04, 2019

我的路由:

const routerMap = [
  {
    path: '/',
    redirect: 'dashboard',
    component: Layout,
    name:'Dashboard',
    children: [
      {
        path: 'dashboard',
        component: () => import('@/view/dashboard'),
        name: 'Dashboard',
        meta: { title: 'dashboard', icon: 'dashboard', noCache: true }
      }
    ]
  },{
    path:'/test',
    component:Layout,
    redirect: '/test/index',
    name:'Test',
    meta:{title:'test',icon:'lock'},
    children:[
      {
        path:'index',
        component:()=>import('@/view/test'),
        name:'test',
        meta:{title:'test', icon: 'example', noCache: true }
      },{
        path:'example',
        component:()=>import('@/view/test/example'),
        name:'example',
        meta:{title:'example',icon:'404'}
      }
    ]
  }
]

面包屑代码:

<template>
  <div class="navbar clearfix">
    <el-breadcrumb class="breadcrumb-container" separator-class="el-icon-arrow-right">
      <el-breadcrumb-item v-for="item in levelList":key="item.path" :to="item.path">{{item.meta.title}}</el-breadcrumb-item>
    </el-breadcrumb>
  </div>
</template>

<script>
  export default {
    name: 'Navbar',
    data() {
      return {
        levelList: []
      }
    },
    watch: {
      $route() {
        this.getBreadcrumb()
      }
    },
    created(){
      this.getBreadcrumb()
    },
    methods:{
      getBreadcrumb() {
        let matched = this.$route.matched.filter(item => item.name)
        const first = matched[0];
        if (first && first.name.trim().toLocaleLowerCase() !== 'Dashboard'.toLocaleLowerCase()) {
          matched = [{ path: '/dashboard', meta: { title: 'dashboard' }}].concat(matched)
        }
        this.levelList = matched
      }
    }
  }
</script>

原理:通过监听当前路由的变化,动态更新面包屑的内容。

以上这篇VUE+elementui面包屑实现动态路由详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)
Apr 14 Javascript
javascript获取当前日期时间及其它操作函数
Jan 11 Javascript
推荐30个新鲜出炉的精美 jQuery 效果
Mar 26 Javascript
jQuery 淡入淡出 png图在ie8下有黑色边框的解决方法
Mar 05 Javascript
键盘KeyCode值列表汇总
Nov 26 Javascript
Javascript 实现全屏滚动实例代码
Dec 31 Javascript
10个最优秀的Node.js MVC框架
Aug 24 Javascript
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
Aug 01 Javascript
详解微信小程序工程化探索之webpack实战
Apr 20 Javascript
关于vue的列表图片选中打钩操作
Sep 09 Javascript
Vue检测屏幕变化来改变不同的charts样式实例
Oct 26 Javascript
基于elementUI竖向表格、和并列的案例
Oct 26 Javascript
Vuex,iView UI面包屑导航使用扩展详解
Nov 04 #Javascript
vue双向绑定数据限制长度的方法
Nov 04 #Javascript
使用p5.js临摹动态图片
Nov 04 #Javascript
p5.js绘制创意自画像
Nov 04 #Javascript
Vue图片浏览组件v-viewer用法分析【支持旋转、缩放、翻转等操作】
Nov 04 #Javascript
vue 指令和过滤器的基本使用(品牌管理案例)
Nov 04 #Javascript
vue中使用GraphQL的实例代码
Nov 04 #Javascript
You might like
php简单的会话类代码
2011/08/08 PHP
解析php函数method_exists()与is_callable()的区别
2013/06/21 PHP
解析php中eclipse 用空格替换 tab键
2013/06/24 PHP
php 验证码(倾斜,正弦干扰线,黏贴,旋转)
2013/06/29 PHP
PHP连续签到功能实现方法详解
2019/12/04 PHP
提高jQuery性能优化的技巧
2015/08/03 Javascript
纯CSS3代码实现滑动开关效果
2015/08/19 Javascript
jquery实现的伪分页效果代码
2015/10/29 Javascript
图解Sublime Text3使用技巧
2015/12/21 Javascript
深入理解$.each和$(selector).each
2016/05/15 Javascript
jQuery无刷新上传之uploadify3.1简单使用
2016/06/18 Javascript
AngularJs Understanding the Model Component
2016/09/02 Javascript
如何清除IE10+ input X 文本框的叉叉和密码输入框的眼睛图标
2016/12/21 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
2017/01/22 Javascript
AngularJS之自定义服务详解(factory、service、provider)
2017/04/14 Javascript
jQuery封装animate.css的实例
2018/01/04 jQuery
实现jquery放大镜的两种方法
2018/02/22 jQuery
解决Vue2.0 watch对象属性变化监听不到的问题
2018/09/11 Javascript
vue+node实现图片上传及预览的示例方法
2018/11/22 Javascript
原生JS实现列表内容自动向上滚动效果
2019/05/22 Javascript
通过javascript实现段落的收缩与展开
2019/06/26 Javascript
Python中使用md5sum检查目录中相同文件代码分享
2015/02/02 Python
Python中的类与类型示例详解
2019/07/10 Python
使用OpCode绕过Python沙箱的方法详解
2019/09/03 Python
Pytorch技巧:DataLoader的collate_fn参数使用详解
2020/01/08 Python
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
2020/02/17 Python
Python基于traceback模块获取异常信息
2020/07/23 Python
SKECHERS官方旗舰店:美国舒适运动休闲品牌
2017/12/22 全球购物
农村面貌改造提升实施方案
2014/03/18 职场文书
大三学年自我鉴定范文(3篇)
2014/09/28 职场文书
故意伤害人身损害赔偿协议书
2014/11/19 职场文书
丧事答谢词
2015/01/05 职场文书
保护动物的宣传语
2015/07/13 职场文书
单身狗福利?Python爬取某婚恋网征婚数据
2021/06/03 Python
使用CSS连接数据库的方式
2022/02/28 HTML / CSS
德劲DE1107指针试高灵敏度全波段收音机机评
2022/04/05 无线电