vue-router+elelment-ui,实现导航栏激活高亮

时间:2023-02-01 21:50:15
<el-menu :default-active="$route.path" class="el-menu-vertical-demo" background-color="#31506F" text-color="#fff" active-text-color="#FFA800"  router :unique-opened="uniqueopened">

重要的是绑定:default-active="$route.path",然后再将index值变成自己的路由地址。

    <el-menu-item index="/main/task">
<i class="el-icon-circle-check"></i>
站点管理
</el-menu-item>

这样导航栏就自动随路由地址高亮啦~~

但是如果你有子路由,那进入子路由旁边的导航栏是不会亮的,因为index值还是你父路由的地址,所以我们需要改变index值或者把$route.path匹配的路径变成父路由的地址,我选择第二种,这样我们就需要路由钩子了!

首先将:default-active="$route.path"变成:default-active="activeindex"绑定一个变量activeindex

<script>
export default{
data(){
return{
uniqueopened:true,
activeIndex:'/main/system' //默认激活路由地址
}
},
methods:{
defaultIdex(){
this.activeIndex = this.$route.path;
}
},
created(){ //vue生命周期创建时
this.defaultIdex()
},
beforeUpdate(){
this.activeIndex = this.$route.matched[2].path //重要的点,this.$route.matched[2].path 就是父路由的地址,使用的是路由钩子。
},
update(){ //vue生命周期改变时
this.defaultIdex()
},
}
</script>

我的理解也是很浅薄,愿有好办法的博友可以告知。三扣~Thanks♪(・ω・)ノ

vue-router+elelment-ui,实现导航栏激活高亮的更多相关文章

  1. Vue页面手动刷新,导航栏激活项还原到初始状态问题解决方案

    场景描述:在页面中存在顶部导航和左侧导航,左侧导航和右侧内容区使用了命名视图实现,点击左侧导航的链接时,右侧内容区相应显示不同组件内容.问题:在当前链接手动刷新浏览器(例如:浏览器地址为/enterp ...

  2. Vue 事件监听实现导航栏吸顶效果(页面滚动后定位)

    Vue 事件监听实现导航栏吸顶效果(页面滚动后定位) Howie126313 关注 2017.11.19 15:05* 字数 100 阅读 3154评论 0喜欢 0 所说的吸顶效果就是在页面没有滑动之 ...

  3. Vue 如何实现一个底部导航栏组件

    参考网址: https://www.jianshu.com/p/088936b7b1bd/ Vue 如何实现一个底部导航栏组件 可以看到父组件是知道我点击了底部TabBar的哪个item的. 实现 实 ...

  4. 6 vue-element&period;ui 左侧导航栏

    <template> <div> <el-menu :default-active="'/'+activeIndex2" mode="ver ...

  5. iOS7 UI兼容 导航栏按钮边框 UINavigationItem left and right padding

    iOS7之前的UI为: 而在iOS7中,由于设计方面的原因,使得UI变为: 修改的方法重写UINavigationItem的setLeftBarButtonItem和setRightBarButton ...

  6. element ui 左侧导航栏

    <el-menu class="left-menu" :default-active="$route.name" :unique-opened=&quot ...

  7. 记一次Vue跨导航栏问题解决方案

    简述 这篇文章是我项目中,遇到的一个issue,我将解决过程和方法记录下来. 本篇文章基于Vue.js进行的前端页面构建,由于仅涉及前端,将不做数据来源及其他部分的叙述.使用的CSS框架是 Boots ...

  8. vue Router——进阶篇

    vue Router--基础篇 1.导航守卫 正如其名,vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航.有多种机会植入路由导航过程中:全局的, 单个路由独享的, 或者组件级的 ...

  9. Vue Router路由守卫妙用:异步获取数据成功后再进行路由跳转并传递数据,失败则不进行跳转

    问题引入 试想这样一个业务场景: 在用户输入数据,点击提交按钮后,这时发起了ajax请求,如果请求成功, 则跳转到详情页面并展示详情数据,失败则不跳转到详情页面,只是在当前页面给出错误消息. 难点所在 ...

随机推荐

  1. 6个强大的AngularJS扩展应用

    本文链接:http://www.codeceo.com/article/6-angularjs-extension.html本文作者:码农网 – 小峰 AngularJS现在非常热门,是Google推 ...

  2. SequoiaDB 系列之七 :源码分析之catalog节点

    这一篇紧接着上一篇SequoiaDB 系列之六 :源码分析之coord节点来讲 在上一篇中,分析了coord转发数据包到catalog节点(也有可能是data节点,视情况而定).这一次,我们继续分析上 ...

  3. springmvc在web&period;xml中的配置

    <!-- SpringMVC核心分发器 --> <servlet> <servlet-name>dispatcherServlet</servlet-name ...

  4. 分布式搜索Elasticsearch增、删、改、查操作深入详解

    引言: 对于刚接触ES的童鞋,经常搞不明白ES的各个概念的含义.尤其对“索引”二字更是与关系型数据库混淆的不行.本文通过对比关系型数据库,将ES中常见的增.删.改.查操作进行图文呈现.能加深你对ES的 ...

  5. HTML中属性ID和属性NAME的区别(转)

    ID和Name都可以用来标识一个标记,Javascript分别有两个方法getElementById和getElementByName来定位Dom节点. 区别如下: 1.我们知道在网页做Post提交时 ...

  6. JavaScript&lpar;第二十六天&rpar;【表单处理】

    为了分担服务器处理表单的压力,JavaScript提供了一些解决方案,从而大大打破了处处依赖服务器的局面.   一.表单介绍 在HTML中,表单是由<form>元素来表示的,而在JavaS ...

  7. &lbrack;LeetCode&rsqb; Number of Lines To Write String 写字符串需要的行数

    We are to write the letters of a given string S, from left to right into lines. Each line has maximu ...

  8. Bugku-CTF之web2-听说聪明的人都能找到答案

    Day1   听说聪明的人都能找到答案   http://123.206.87.240:8002/yanzhengma/  

  9. 20155235 《网络攻防》 实验八 Web基础

    20155235 <网络攻防> 实验八 Web基础 实验内容 Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表 ...

  10. IDEA搭建ssm框架测试衍生出的问题The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java&period;library&period;path&colon; D&colon;&bsol;Develop&bsol;jdk7&bsol;jdk1&period;7&period;0&lowbar;79&bsol;bin&semi;

    最近玩起IDEA这开发工具,搭建ssm框架测试时,部署项目出现如下问题: 信息: The APR based Apache Tomcat Native library which allows opt ...