vue 路由導航樣式active始終選中


在vue項目中會存在各種各樣的導航,頭部導航欄,側邊欄導航

例如,有時候,在頭部導航欄點擊“消息中心”跳轉到頁面的時候,往往會變成這種情況

但是這里還出現了一個側導航欄,所以出現了兩種狀況

狀況1:消息中心的背景顏色不見了

理想狀態:

實際效果:

解決辦法:

在css樣式中,給.router-link-exact-active加上顏色即可

 

 狀況2:應該默認選中側欄的第一個,但是此時“消息中心”中的選中樣式消失了,如下圖

理想狀態是點擊側欄切換的時候,頂部的樣式不受影響

解決辦法:

修改頭部導航欄樣式:

原來樣式:

<router-link v-for="(item,index) in list" :key="item.value" :to="{path:item.path}" @click.native="changeBgc(index)" class="topbar-item">
  {{item.label}}
</router-link>
 
修改后:
給代碼加上  :class="{'router-link-exact-active':ind == index}
即改為:
<router-link v-for="(item,index) in list" :key="item.value" :to="{path:item.path}" :class="{'router-link-exact-active':ind == index} @click.native="changeBgc(index)" class="topbar-item">
  {{item.label}}
</router-link>
然后即可達到我們想要的狀態,點擊側欄切換的時候導航樣式不受影響

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM