溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

vue中實(shí)現(xiàn)某一些路由頁面隱藏導(dǎo)航欄功能的方法

發(fā)布時(shí)間:2020-11-02 16:52:36 來源:億速云 閱讀:1276 作者:Leah 欄目:開發(fā)技術(shù)

今天就跟大家聊聊有關(guān)vue中實(shí)現(xiàn)某一些路由頁面隱藏導(dǎo)航欄功能的方法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

為了將導(dǎo)航欄顯示在每一個(gè)頁面中,可以將導(dǎo)航欄與<router-view>放在同一級顯示,如下:

<header>
  ...
</header>
<router-view></router-view>

但是,在某些時(shí)候,我們需要隱藏導(dǎo)航欄顯示,比如登錄界面,為了實(shí)現(xiàn)導(dǎo)航欄的隱藏,可以使用如下代碼:

<header v-show="$route.name!=='login'">
  ...
</header>
<router-view></router-view>

這樣就可以實(shí)現(xiàn)隱藏導(dǎo)航欄。

補(bǔ)充知識:vue+el-menu實(shí)現(xiàn)路由刷新和導(dǎo)航欄菜單狀態(tài)保持(局部刷新頁面)

一、菜單項(xiàng)激活狀態(tài)保持

有時(shí),我們在項(xiàng)目中會有這樣一個(gè)需求,即實(shí)現(xiàn) 一個(gè)側(cè)導(dǎo)航欄,點(diǎn)擊不同的菜單項(xiàng),右邊內(nèi)容會跟著變化,而頁面手動刷新后想要使菜單激活狀態(tài)保持,那么這個(gè)功能該如何實(shí)現(xiàn)呢?

現(xiàn)在給出以下解決辦法:

vue中實(shí)現(xiàn)某一些路由頁面隱藏導(dǎo)航欄功能的方法

即加上這樣一段代碼即可:

:default-active="this.$route.path"

二、實(shí)現(xiàn)頁面的路由刷新(局部刷新)

想要實(shí)現(xiàn)路由的刷新,官方并沒有給出解決辦法,通過自己摸索和借鑒,得出了以下解決方法:

首先,新建一個(gè)空白頁面redirect.vue,然后寫入這樣一段代碼:

<script>
export default {
 beforeCreate() {
   console.log(this.$route)
   const nextPath = this.$route.query.nextPath
  this.$router.replace({ path: nextPath})
  console.log("調(diào)用")
  console.log(nextPath)
 },
 render: function(h) {
  return h() // avoid warning message
 }
}
</script>

之后在導(dǎo)航頁加入一個(gè)方法,如下:

//實(shí)現(xiàn)路由的局部刷新
  reloadRouter(path) {
   this.$router.replace({
    path: "/redirect",
    query: {
     nextPath: path
    }
   });
  }

再通過給每一個(gè)菜單項(xiàng)添加點(diǎn)擊事件,即可實(shí)現(xiàn)該功能:

vue中實(shí)現(xiàn)某一些路由頁面隱藏導(dǎo)航欄功能的方法

看完上述內(nèi)容,你們對vue中實(shí)現(xiàn)某一些路由頁面隱藏導(dǎo)航欄功能的方法有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI