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 相关文章推荐
JSONP 跨域共享信息
Aug 16 Javascript
表单的焦点顺序tabindex和对应enter键提交
Jan 04 Javascript
从零学JS之你需要了解的几本书
May 19 Javascript
javascript记录文本框内文字个数检测文字个数变化
Oct 14 Javascript
AngularJS基础 ng-mouseenter 指令示例代码
Aug 02 Javascript
微信小程序 选择器(时间,日期,地区)实例详解
Nov 16 Javascript
微信小程序 欢迎界面开发的实例详解
Nov 30 Javascript
基于 webpack2 实现的多入口项目脚手架详解
Jun 26 Javascript
Vue结合Video.js播放m3u8视频流的方法示例
May 04 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
Feb 01 Javascript
js将URL网址转为16进制加密与解密函数
Mar 04 Javascript
15个简单的JS编码标准让你的代码更整洁(小结)
Jul 16 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 编程的 5个良好习惯
2009/02/20 PHP
PHP 危险函数全解析
2009/09/09 PHP
PHP大小写问题:函数名和类名不区分,变量名区分
2013/06/17 PHP
php中的boolean(布尔)类型详解
2013/10/28 PHP
PHP循环结构实例讲解
2014/02/10 PHP
PHP设计模式(八)装饰器模式Decorator实例详解【结构型】
2020/05/02 PHP
php与阿里云短信接口接入操作案例分析
2020/05/27 PHP
验证用户是否修改过页面的数据的实现方法
2008/09/26 Javascript
extjs grid设置某列背景颜色和字体颜色的实现方法
2010/09/06 Javascript
有关DOM元素与事件的3个谜题
2010/11/11 Javascript
js 中{},[]中括号,大括号使用详解
2011/05/12 Javascript
jQuery移除元素自动解绑事件实现思路及代码
2014/05/31 Javascript
js改变style样式和css样式的简单实例
2016/06/28 Javascript
js实现上传文件添加和删除文件选择框
2016/10/24 Javascript
jQuery checkbox选中问题之prop与attr注意点分析
2016/11/15 Javascript
jQuery内容筛选选择器实例代码
2017/02/06 Javascript
JS中如何实现Laravel的route函数详解
2017/02/12 Javascript
Cookies 和 Session的详解及区别
2017/04/21 Javascript
vue项目中导入swiper插件的方法
2018/01/30 Javascript
vue中tab选项卡的实现思路
2018/11/25 Javascript
vue开发环境配置跨域的方法步骤
2019/01/16 Javascript
vue写h5页面的方法总结
2019/02/12 Javascript
vue实现歌手列表字母排序下拉滚动条侧栏排序实时更新
2019/05/14 Javascript
微信小程序 Storage更新详解
2019/07/16 Javascript
react实现同页面三级跳转路由布局
2019/09/26 Javascript
JQuery基于FormData异步提交数据文件
2020/09/01 jQuery
python输出当前目录下index.html文件路径的方法
2015/04/28 Python
python matplotlib画图实例代码分享
2017/12/27 Python
python书籍信息爬虫实例
2018/03/19 Python
举例讲解Python常用模块
2019/03/08 Python
Python自动化运维之Ansible定义主机与组规则操作详解
2019/06/13 Python
Python closure闭包解释及其注意点详解
2019/08/28 Python
python中如何写类
2020/06/29 Python
俄罗斯街头服装品牌:Black Star Wear
2017/03/01 全球购物
尽职尽责村干部自我鉴定
2014/01/23 职场文书
研究生求职自荐书
2014/06/23 职场文书