vue+element导航栏高亮显示的解决方式


Posted in Javascript onNovember 12, 2019

用导航菜单时遇到的一些问题:点击打开官网例子

vue+element导航栏高亮显示的解决方式

问题1:

页面强制刷新,按F5时,页面如果没有好好设置的话,导航栏默认叠起来,而且无高亮显示;刷新后导航栏显示和之前不一致,如图所示

vue+element导航栏高亮显示的解决方式

解决:

html关键代码设置 :default-active="defaultUrl"

vue+element导航栏高亮显示的解决方式

这儿的原理就是defaultUrl跟#/后面的一致,也就是说跟router.js中的path一致才行(router.js见后文)

vue+element导航栏高亮显示的解决方式

window.location.href.split('/#')[1] 获取的是"http://localhost:8080/#/search-contact/1"中的"/search-contact/1"

这样设置后,无论如何刷新页面,页面都会高亮显示当前url

问题2:

vue+element导航栏高亮显示的解决方式

点击浏览器前进后退按钮导致高亮显示不同步,

解决问题关键,和问题一原理一样,当路由变化时,改变默认显示高亮的值

//监听路由变化
  watch: {
   '$route':'getPath'
  },
  methods: {
   getPath(){
    this.defaultUrl = this.$route.path;
   }
  },

补充:

以上,div和js文件在设置菜单栏的menu.vue文件下。

router.js里面这样设置

import Vue from 'vue';
import Router from 'vue-router';
 
Vue.use(Router);
 
import Home from './views/home';
 
import SearchProperty from './views/search/search-property';
import SearchListing from './views/search/search-listing';
import SearchContact from './views/search/search-contact';
import SearchSchool from './views/search/search-school';
 
export default new Router({
 routes: [
  {name: 'home', path: '/', component: Home},
  {name: 'search-property', path: '/search-property/:pageNum', component: SearchProperty},
  {name: 'search-contact', path: '/search-contact/:pageNum', component: SearchContact},
  {name: 'search-listing', path: '/search-listing/:pageNum', component: SearchListing},
  {name: 'search-school', path: '/search-school/:pageNum', component: SearchSchool},
 
 ],
});

补充:这是目前发现最简单的一种方法

<el-menu router :default-active="$route.path">
</el-menu>

以上这篇vue+element导航栏高亮显示的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
开发跨浏览器javascript常见注意事项
Jan 01 Javascript
深入理解javaScript中的事件驱动
May 21 Javascript
javascript如何动态加载表格与动态添加表格行
Nov 27 Javascript
深入理解jQuery中live与bind方法的区别
Dec 18 Javascript
解析Node.js异常处理中domain模块的使用方法
Feb 16 Javascript
js获取新浪天气接口的实现代码
Jun 06 Javascript
JavaScript日期选择功能示例
Jan 16 Javascript
vue2.x select2 指令封装详解
Oct 12 Javascript
浅谈Postman解决token传参的问题
Mar 31 Javascript
vue自动化表单实例分析
May 06 Javascript
Array数组对象中的forEach、map、filter及reduce详析
Aug 02 Javascript
layui数据表格实现重载数据表格功能(搜索功能)
Jul 27 Javascript
vue-element-admin 菜单标签失效的解决方式
Nov 12 #Javascript
Vue退出登录时清空缓存的实现
Nov 12 #Javascript
解决vue admin element noCache设置无效的问题
Nov 12 #Javascript
Vue2.0 实现页面缓存和不缓存的方式
Nov 12 #Javascript
Vue页面切换和a链接的本质区别详解
Nov 12 #Javascript
vue 中几种传值方法(3种)
Nov 12 #Javascript
Vue 中 a标签上href无法跳转的解决方式
Nov 12 #Javascript
You might like
PHP调用MySQL的存储过程的实现代码
2008/08/12 PHP
php实现rc4加密算法代码
2012/04/25 PHP
强制PHP命令行脚本单进程运行的方法
2014/04/15 PHP
使用TextRange获取输入框中光标的位置的代码
2007/03/08 Javascript
用JavaScript实现UrlEncode和UrlDecode的脚本代码
2008/07/23 Javascript
jQuery 开天辟地入门篇一
2009/12/09 Javascript
juqery 学习之六 CSS--css、位置、宽高
2011/02/11 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
2013/11/20 Javascript
JavaScript将字符串转换为整数的方法
2015/04/14 Javascript
IE6-IE9使用JSON、table.innerHTML所引发的问题
2015/12/22 Javascript
如何让一个json文件显示在表格里【实现代码】
2016/05/09 Javascript
浅析jQuery 3.0中的Data
2016/06/14 Javascript
AngularJS学习第二篇 AngularJS依赖注入
2017/02/13 Javascript
BootstrapTable refresh 方法使用实例简单介绍
2017/02/20 Javascript
自带气泡提示的vue校验插件(vue-verify-pop)
2017/04/07 Javascript
Vuejs实现带样式的单文件组件新方法
2017/05/02 Javascript
Vue实现移动端页面切换效果【推荐】
2018/11/13 Javascript
VueX模块的具体使用(小白教程)
2020/06/05 Javascript
javascript实现数字时钟效果
2021/02/06 Javascript
[02:41]DOTA2英雄基础教程 谜团
2013/12/10 DOTA
Python脚本实现下载合并SAE日志
2015/02/10 Python
Python设置默认编码为utf8的方法
2016/07/01 Python
使用DataFrame删除行和列的实例讲解
2018/04/08 Python
python使用matplotlib绘制热图
2018/11/07 Python
python实现感知器算法(批处理)
2019/01/18 Python
解决Django Static内容不能加载显示的问题
2019/07/28 Python
Internet主要有哪些网络群组成
2015/12/24 面试题
自荐书4要点
2014/01/25 职场文书
电大毕业生自我鉴定
2014/04/10 职场文书
公共场所禁烟倡议书
2014/08/30 职场文书
奉献家乡演讲稿
2014/09/16 职场文书
幼师中班个人总结
2015/02/12 职场文书
2015年物业管理员工工作总结
2015/10/15 职场文书
离职员工给领导和同事的感谢信
2015/11/03 职场文书
2019大学生实习报告
2019/06/21 职场文书
Nginx配置并兼容HTTP实现代码解析
2021/03/31 Servers