vue 路由嵌套高亮问题的解决方法


Posted in Javascript onMay 17, 2018

正常路由嵌套是没有问题的,但是如果你已经在当前主路由页面了,然后再次点击主路由就会出现页面数据空白的情况

看代码:

//主路由通过v-for循环出来
<div class="list-group">
  <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" v-on:click="doNothing" class="list-group-item" v-if="getPages.length != 0">数据统计</a>
  <router-link v-for="page in getPages" class="list-group-item" :to="page.pageUrl">{{page.pageName}}</router-link>
</div>
//次路由通过URL拼接的方式导航到子路由页面
<div class="panel-body tabs-wrap">
   <!--navtabbar begin-->
   <ul class="nav nav-tabs" v-if="isTencentPerson()">
    <router-link :to="{ name: 'statistics1',params:{showPanel:false} }" tag="li" role="presentation"><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >统计1</a></router-link>



<router-link :to="{ name: 'statistics2' ,params:{showPanel:false}}" tag="li" role="presentation"><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >统计2</a></router-link> 



<router-link :to="{ name: 'statistics3' ,params:{showPanel:false}}" tag="li" role="presentation"><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >统计3</a></router-link> 

 </ul> 

 <!--navtabbar end--> 

 <!--内容 begin-->

 <router-view></router-view>
</div>

子路由JS:

exprot default{


 mounted() {
      this.routerHop();
    },
    updated() {
      //当前页再次点击主路由时重新判断跳转
      var url = this.$route.path;
      if (url === "/statistics/dataStatistics") {
        this.routerHop();
      }
    },
    methods: {
      //权限判断
      isPerson() {
        let user = this.$store.state.user.userInfo;
        if (user.userType == 1) {
          return true
        }
        return false;
      },
      routerHop(){
        // 客户账号登录只显示错误统计分析页面
        if(this.isPerson() === false){
          return router.push({name: 'statistics1', params: {showPanel: false}});
        }
        router.push({name: 'statistics3', params: {showPanel: false}}); },


 
}
 
 }
}

因为已经在当前子路由页面,当再次点击主路由导航时,无法触发mounted钩子。通过updated这个钩子函数可以让再次找到对应子路由,从而解决再次点击主路由页面空白的bug。

总结

以上所述是小编给大家介绍的vue 路由嵌套高亮问题的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Jquery解析json数据详解
Dec 26 Javascript
Javascript代码实现仿实例化类
Apr 03 Javascript
JS基于Ajax实现的网页Loading效果代码
Oct 27 Javascript
JS中创建函数的三种方式及区别
Mar 13 Javascript
JavaScript 函数的执行过程
May 09 Javascript
详解AngularJs HTTP响应拦截器实现登陆、权限校验
Apr 11 Javascript
你可能不知道的前端算法之文字避让(inMap)
Jan 12 Javascript
vue2.0.js的多级联动选择器实现方法
Feb 09 Javascript
在vue2.0中引用element-ui组件库的方法
Jun 21 Javascript
layui从数据库中获取复选框的值并默认选中方法
Aug 15 Javascript
解决layui表格内文本超出隐藏的问题
Sep 12 Javascript
如何通过javaScript去除字符串两端的空白字符
Feb 06 Javascript
JS实现字符串中去除指定子字符串方法分析
May 17 #Javascript
结合Vue控制字符和字节的显示个数的示例
May 17 #Javascript
微信小程序使用form表单获取输入框数据的实例代码
May 17 #Javascript
AngularJS实现的base64编码与解码功能示例
May 17 #Javascript
解决修复npm安装全局模块权限的问题
May 17 #Javascript
npm 下载指定版本的组件方法
May 17 #Javascript
ES6之模版字符串的具体使用
May 17 #Javascript
You might like
php合并js请求的例子
2013/11/01 PHP
PHP使用mysqli同时执行多条sql查询语句的实例
2019/03/22 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解
2019/04/09 PHP
php常用字符串长度函数strlen()与mb_strlen()用法实例分析
2019/06/25 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
2019/12/01 PHP
一些mootools的学习资源
2010/02/07 Javascript
Chosen 基于jquery的选择框插件使用方法
2012/05/30 Javascript
Angularjs编写KindEditor,UEidtor,jQuery指令
2015/01/28 Javascript
JavaScript中使用Math.PI圆周率属性的方法
2015/06/14 Javascript
javascript设计简单的秒表计时器
2020/09/05 Javascript
AngularJS表单和输入验证实例
2016/11/02 Javascript
jQuery html表格排序插件tablesorter使用方法详解
2017/02/10 Javascript
jQuery Masonry瀑布流布局神器使用详解
2017/05/25 jQuery
js获取元素的偏移量offset简单方法(必看)
2017/07/05 Javascript
浅谈vuex 闲置状态重置方案
2018/01/04 Javascript
Javascript将图片的绝对路径转换为base64编码的方法
2018/01/11 Javascript
基于Vuex无法观察到值变化的解决方法
2018/03/01 Javascript
Vue使用json-server进行后端数据模拟功能
2018/04/17 Javascript
vue2.0 实现导航守卫的具体用法(路由守卫)
2018/05/17 Javascript
nodejs实现用户登录路由功能
2019/05/22 NodeJs
小程序实现左滑删除效果
2019/07/25 Javascript
js tab栏切换代码实例解析
2019/09/03 Javascript
python从子线程中获得返回值的方法
2019/01/30 Python
pyqt5 删除layout中的所有widget方法
2019/06/25 Python
英国工具中心:UK Tool Centre
2017/07/10 全球购物
abstract class和interface有什么区别?
2012/01/03 面试题
什么时候用assert
2015/05/08 面试题
物流管理专业大学生自荐信
2013/10/04 职场文书
涉外文秘个人求职的自我评价
2013/10/07 职场文书
旅游与酒店管理的自我评价分享
2013/11/03 职场文书
工程招投标邀请书
2014/01/30 职场文书
艺术学院毕业生自我评价
2014/03/02 职场文书
2014社区三八妇女节活动方案
2014/03/30 职场文书
资产运营委托书范本
2014/10/16 职场文书
python中pandas对多列进行分组统计的实现
2021/06/18 Python
mongodb清除连接和日志的正确方法分享
2021/09/15 MongoDB