active vue 路由样式保持_Vue 解决父组件跳转子路由后当前导航active样式消失问题...

举个栗子,导航栏如下图,当前新闻资讯的路由是:localhost:8083/#/new,导航栏样式如图所示:

6989b29644e776efc9aafc0b422a3510.png

随便挑个新闻点击后会跳转到子路由:localhost:8083/#/new/newDetail,这时候新闻资讯的主路由style样式出现消失的问题,如下图:

5ba670a2feb0377dd27e6c530d33d4ff.png

style代码:

.router-link-exact-active{

color: #8fc526!important;

border-top: 4px solid #8fc526!important;

}

router.js代码:

{

path: '/new',

name: 'new',

component: news,

children: [

{

path: '/new/newDetail',

name: 'newDetail',

component: newsDetail

}

]

}

解决方案:

将style方案改成下面即可

.router-link-active{

color: #8fc526!important;

border-top: 4px solid #8fc526!important;

}

类名设置为router-link-active,即使是跳转到子路由也不会影响到主路由的样式问题

补充知识:解决element-ui中el-menu组件作为vue-router模式在刷新页面后default-active属性与当前路由页面不一致问题的方法

解决办法是给menu的default-active绑定route.path

形如:

每次渲染menu都会读当前path 设置为default-active

以上这篇Vue 解决父组件跳转子路由后当前导航active样式消失问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

本文标题: Vue 解决父组件跳转子路由后当前导航active样式消失问题

本文地址: http://www.cppcns.com/wangluo/javascript/325741.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值