vue2.0 elementUI制作面包屑导航栏


Posted in Javascript onFebruary 22, 2018

Main.js

var routeList = [];
router.beforeEach((to, from, next) => {
 var index = -1;
 for(var i = 0; i < routeList.length; i++) {
  if(routeList[i].name == to.name) {
   index = i;
   break;
  }
 }
 if (index !== -1) {
//如果存在路由列表,则把之后的路由都删掉
  routeList.splice(index + 1, routeList.length - index - 1);
 } else if(to.name != '登录'){
  routeList.push({"name":to.name,"path":to.fullPath});
 }
 to.meta.routeList = routeList;
 next()
});

2、在要使用的组件中

<template>
  <div class="level-bread">
   <el-breadcrumb separator="/">
    <el-breadcrumb-item v-for="item in realList" :to="item.path">{{item.name}}</el-breadcrumb-item>
   </el-breadcrumb>
  </div>
</template>

<script>
  export default {
   name: "lelve-bread",
   created(){
    this.getRoutePath();
   },
   data() {
    return {
     realList: []
    }
   },
   methods:{
    getRoutePath() {
     this.realList = this.$route.meta.routeList;
    }
   },
   beforeRouteEnter(to,from, next) {
    next((vm) => {
     vm.realList = to.meta.routeList;
    });
   },
   // watch:{
   //  $route:function(newV,oldV) {
   //   this.realList =newV.meta.routeList;
   //  }
   // }
  }
</script>

用 watch 或者 beforeRouteEnter 均可。

需要注意的是,beforeRouteEnter 此时访问不到this。

const Foo = {
 template: `...`,
 beforeRouteEnter (to, from, next) {
  // 在渲染该组件的对应路由被 confirm 前调用
  // 不!能!获取组件实例 `this`
  // 因为当守卫执行前,组件实例还没被创建
 },
 beforeRouteUpdate (to, from, next) {
  // 在当前路由改变,但是该组件被复用时调用
  // 举例来说,对于一个带有动态参数的路径 /foo/:id,在 /foo/1 和 /foo/2 之间跳转的时候,
  // 由于会渲染同样的 Foo 组件,因此组件实例会被复用。而这个钩子就会在这个情况下被调用。
  // 可以访问组件实例 `this`
 },
 beforeRouteLeave (to, from, next) {
  // 导航离开该组件的对应路由时调用
  // 可以访问组件实例 `this`
 }
}

以上就是本次我们整理的全部内容,希望能够帮助到大家,感谢大家对三水点靠木的支持。

Javascript 相关文章推荐
检测是否已安装 .NET Framework 3.5的js脚本
Feb 14 Javascript
jQuery1.6 类型判断实现代码
Sep 01 Javascript
js实现翻页后保持checkbox选中状态的实现方法
Nov 03 Javascript
基于JavaScript 下namespace 功能的简单分析
Jul 05 Javascript
jQuery操作DOM之获取表单控件的值
Jan 23 Javascript
JavaScript中利用Array和Object实现Map的方法
Jul 27 Javascript
jquery实现华丽的可折角广告代码
Sep 02 Javascript
给before和after伪元素设置js效果的方法
Dec 04 Javascript
完美解决jQuery符号$与其他javascript 库、框架冲突的问题
Aug 09 Javascript
详解vue项目首页加载速度优化
Oct 18 Javascript
layui 弹出删除确认界面的实例
Sep 06 Javascript
vue-cli3中配置alias和打包加hash值操作
Sep 04 Javascript
webpack将js打包后的map文件详解
Feb 22 #Javascript
浅谈用Webpack路径压缩图片上传尺寸获取的问题
Feb 22 #Javascript
深入理解ES6中let和闭包
Feb 22 #Javascript
vue+iview+less+echarts实战项目总结
Feb 22 #Javascript
在vscode中统一vue编码风格的方法
Feb 22 #Javascript
vue webpack打包优化操作技巧
Feb 22 #Javascript
vue和react等项目中更简单的实现展开收起更多等效果示例
Feb 22 #Javascript
You might like
BBS(php &amp; mysql)完整版(六)
2006/10/09 PHP
一个ubbcode的函数,速度很快.
2006/10/09 PHP
PHP实现的简单日历类
2014/11/29 PHP
thinkphp3.x连接mysql数据库的方法(具体操作步骤)
2016/05/19 PHP
PHP面向对象中new self()与 new static()的区别浅析
2017/08/17 PHP
php获取微信共享收货地址的方法
2017/12/21 PHP
6个DIV 135或246间隔一秒轮番显示效果
2010/07/24 Javascript
JS+JSP checkBox 全选具体实现
2014/01/02 Javascript
Jquery实现的角色左右选择特效
2014/05/21 Javascript
JavaScript中的getMilliseconds()方法使用详解
2015/06/10 Javascript
基于javascript实现精确到毫秒的倒计时限时抢购
2016/04/17 Javascript
JavaScript——DOM操作——Window.document对象详解
2016/07/14 Javascript
js判断checkbox是否选中个数的方法(超简单)
2016/08/19 Javascript
jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)
2016/11/09 Javascript
D3.js进阶系列之CSV表格文件的读取详解
2017/06/06 Javascript
vue 巧用过渡效果(小结)
2018/09/22 Javascript
详解为什么Vue中不要用index作为key(diff算法)
2020/04/04 Javascript
Js on及addEventListener原理用法区别解析
2020/07/11 Javascript
关于vue 结合原生js 解决echarts resize问题
2020/07/26 Javascript
[01:12:35]Spirit vs Navi Supermajor小组赛 A组败者组第一轮 BO3 第二场 6.2
2018/06/03 DOTA
python学习之编写查询ip程序
2016/02/27 Python
ubuntu安装mysql pycharm sublime
2018/02/20 Python
python安装教程
2018/02/28 Python
tensorflow实现逻辑回归模型
2018/09/08 Python
python pandas利用fillna方法实现部分自动填充功能
2020/03/16 Python
大学毕业生的自我鉴定
2013/11/30 职场文书
大学班长的职责
2014/01/27 职场文书
敬老模范事迹
2014/05/21 职场文书
在职证明格式样本
2015/06/15 职场文书
2016年“5.12”护士节致辞
2015/07/31 职场文书
大学学生会竞选稿
2015/11/19 职场文书
2019单位介绍信怎么写
2019/06/24 职场文书
比较几种Redis集群方案
2021/06/21 Redis
golang中字符串MD5生成方式总结
2021/07/04 Golang
python中urllib包的网络请求教程
2022/04/19 Python
Python查找算法的实现 (线性、二分,分块、插值查找算法)
2022/04/24 Python