国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
什麼是router-view
基本使用方式
嵌套路由怎麼用router-view?
多個(gè)命名視圖怎麼用?
動(dòng)態(tài)緩存router-view 內(nèi)容
首頁(yè) web前端 Vue.js 如何使用路由器視圖組件?

如何使用路由器視圖組件?

Jun 28, 2025 am 12:59 AM
組件

router-view 是Vue Router 實(shí)現(xiàn)頁(yè)面切換的核心組件,它作為插槽佔(zhàn)位符,自動(dòng)渲染匹配到的路由組件?;居梅ㄊ窃贏pp.vue 或佈局組件中添加<router-view></router-view>,URL 變化時(shí)會(huì)自動(dòng)顯示對(duì)應(yīng)組件;嵌套路由需在父組件中添加router-view 以展示子路由內(nèi)容;命名視圖通過(guò)給多個(gè)router-view 指定名稱(chēng),並在路由配置中使用components 分別指定組件;動(dòng)態(tài)緩存可通過(guò)keep-alive 包裹router-view 並結(jié)合meta 屬性控制是否保留組件狀態(tài)。掌握這些要點(diǎn)能有效構(gòu)建靈活的路由結(jié)構(gòu)。

用好router-view這個(gè)組件,其實(shí)不難,但它是Vue Router 實(shí)現(xiàn)頁(yè)面切換的核心。


什麼是router-view

router-view是Vue Router 提供的一個(gè)插槽組件,它告訴Vue Router: “我要在這裡展示匹配到的路由組件” 。你可以把它理解為一個(gè)“佔(zhàn)位符”,當(dāng)URL 改變時(shí),Vue Router 會(huì)根據(jù)當(dāng)前路徑自動(dòng)把對(duì)應(yīng)的組件渲染到這裡。

它默認(rèn)是命名視圖中的default ,也就是說(shuō)如果你沒(méi)做額外配置,只要在模板中寫(xiě)上<router-view></router-view> ,就能顯示主內(nèi)容區(qū)域。


基本使用方式

最簡(jiǎn)單的用法就是直接放在App.vue 或佈局組件中:

 <template>
  <div id="app">
    <router-view />
  </div>
</template>

這樣,當(dāng)你訪問(wèn)/about ,就會(huì)顯示About組件,訪問(wèn)/home就顯示Home組件。不需要手動(dòng)控制哪個(gè)組件顯示,Vue Router 會(huì)幫你搞定。

常見(jiàn)錯(cuò)誤提醒:

  • 忘記放<router-view> ,頁(yè)面空白也不奇怪?
  • 多層嵌套路由時(shí),子路由的內(nèi)容也不會(huì)自動(dòng)出現(xiàn),得在父組件裡加一個(gè)router-view

嵌套路由怎麼用router-view?

嵌套路由(Nested Routes)是構(gòu)建多級(jí)頁(yè)面結(jié)構(gòu)的關(guān)鍵,比如你有/user/123/profile/user/123/settings ,它們都屬於/user/:id的子頁(yè)面。

這時(shí)候就需要在父組件中添加一個(gè)router-view來(lái)展示子路由的內(nèi)容。

舉個(gè)例子:

 const routes = [
  {
    path: &#39;/user/:id&#39;,
    component: UserLayout,
    children: [
      { path: &#39;profile&#39;, component: UserProfile },
      { path: &#39;settings&#39;, component: UserSettings }
    ]
  }
]

然後在UserLayout.vue中:

 <template>
  <div>
    <h1>User Layout</h1>
    <router-view /> <!-- 子路由組件會(huì)顯示在這裡-->
  </div>
</template>

這樣當(dāng)你訪問(wèn)/user/123/profile , UserProfile就會(huì)被渲染在這個(gè)router-view裡面。


多個(gè)命名視圖怎麼用?

有時(shí)候你想在一個(gè)頁(yè)面上同時(shí)顯示多個(gè)不同區(qū)域的內(nèi)容,比如導(dǎo)航欄、側(cè)邊欄、主內(nèi)容區(qū),這時(shí)候就可以用命名視圖(Named Views) 。

你需要給每個(gè)router-view起個(gè)名字:

 <template>
  <div>
    <router-view name="header" />
    <router-view />
    <router-view name="sidebar" />
  </div>
</template>

然後在路由配置中指定每個(gè)視圖對(duì)應(yīng)哪個(gè)組件:

 {
  path: &#39;/&#39;,
  components: {
    default: MainContent,
    header: HeaderBar,
    sidebar: SideMenu
  }
}

注意這裡用了components (複數(shù)),而不是component 。這種用法不太常見(jiàn),但適合需要分塊管理的大項(xiàng)目。


動(dòng)態(tài)緩存router-view 內(nèi)容

有時(shí)候你希望切換路由時(shí)不銷(xiāo)毀組件,保留狀態(tài),比如表單輸入、滾動(dòng)位置等,可以用<keep-alive>包裹router-view

 <keep-alive>
  <router-view v-if="$route.meta.keepAlive" />
</keep-alive>
<router-view v-if="!$route.meta.keepAlive" />

或者更簡(jiǎn)潔的方式:

 <keep-alive>
  <router-view v-slot="{ Component }">
    <component :is="Component" v-if="$route.meta.keepAlive" />
  </router-view>
</keep-alive>
<router-view v-slot="{ Component }">
  <component :is="Component" v-if="!$route.meta.keepAlive" />
</router-view>

這需要你在路由配置中設(shè)置meta: { keepAlive: true }來(lái)決定哪些頁(yè)面需要緩存。


基本上就這些。
router-view看起來(lái)簡(jiǎn)單,但配合嵌套路由、命名視圖、緩存等功能後,能玩出不少花樣。掌握好它的用法,對(duì)構(gòu)建清晰的路由結(jié)構(gòu)很有幫助。

以上是如何使用路由器視圖組件?的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請(qǐng)聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)程式碼編輯軟體(SublimeText3)

熱門(mén)話題

Laravel 教程
1600
29
PHP教程
1502
276
如何安裝Win10舊版元件DirectPlay 如何安裝Win10舊版元件DirectPlay Dec 28, 2023 pm 03:43 PM

不少用戶在玩win10的的一些遊戲的時(shí)候總是會(huì)遇到一些問(wèn)題,比如說(shuō)卡屏和花屏等等情況,這個(gè)時(shí)候我們是可以採(cǎi)用打開(kāi)directplay這個(gè)功能來(lái)解決的,而且功能的操作方法也很簡(jiǎn)單。 win10舊版元件directplay怎麼安裝1、在搜尋框裡面輸入「控制臺(tái)」然後開(kāi)啟2、檢視方式選擇大圖示3、找到「程式與功能」4、點(diǎn)選左側(cè)的啟用或關(guān)閉win功能5、選擇舊版這裡的勾選上就可以了

如何使用 Vue 實(shí)現(xiàn)日曆元件? 如何使用 Vue 實(shí)現(xiàn)日曆元件? Jun 25, 2023 pm 01:28 PM

Vue是一款非常流行的前端框架,它提供了許多工具和功能,如元件化、資料綁定、事件處理等,能夠幫助開(kāi)發(fā)者建立出高效、靈活和易於維護(hù)的Web應(yīng)用程式。在這篇文章中,我來(lái)介紹如何使用Vue實(shí)作一個(gè)日曆元件。 1.需求分析首先,我們需要分析這個(gè)行事曆組件的需求。一個(gè)基本的日曆應(yīng)該具備以下功能:展示當(dāng)前月份的日曆頁(yè)面;支援切換到前一月或下一月;支援點(diǎn)擊某一天,

VUE3開(kāi)發(fā)基礎(chǔ):使用extends繼承元件 VUE3開(kāi)發(fā)基礎(chǔ):使用extends繼承元件 Jun 16, 2023 am 08:58 AM

Vue是目前最受歡迎的前端框架之一,而VUE3則是Vue框架的最新版本,相較於VUE2,VUE3具備了更高的性能和更出色的開(kāi)發(fā)體驗(yàn),成為了眾多開(kāi)發(fā)者的首選。在VUE3中,使用extends繼承元件是一個(gè)非常實(shí)用的開(kāi)發(fā)方式,本文將為大家介紹如何使用extends繼承元件。 extends是什麼?在Vue中,extends是一個(gè)非常實(shí)用的屬性,它可以用於子元件繼承父

VSCode插件分享:一個(gè)即時(shí)預(yù)覽Vue/React元件的插件 VSCode插件分享:一個(gè)即時(shí)預(yù)覽Vue/React元件的插件 Mar 17, 2022 pm 08:07 PM

在VSCode中開(kāi)發(fā)Vue/React元件時(shí),怎麼即時(shí)預(yù)覽元件?本篇文章就跟大家分享一個(gè)VSCode 中即時(shí)預(yù)??覽Vue/React元件的插件,希望對(duì)大家有幫助!

如何開(kāi)啟win10舊版組件的設(shè)置 如何開(kāi)啟win10舊版組件的設(shè)置 Dec 22, 2023 am 08:45 AM

win10舊版元件是需要使用者自己去設(shè)定裡面打開(kāi)的,因?yàn)楹芏嗟脑綍r(shí)都是預(yù)設(shè)關(guān)閉的狀態(tài),首先我們需要進(jìn)入到設(shè)定裡面,操作很簡(jiǎn)單,跟著下面的步驟來(lái)就可以了win10舊版元件在哪裡開(kāi)啟1、點(diǎn)選開(kāi)始,然後點(diǎn)選「win系統(tǒng)」2、點(diǎn)選進(jìn)入控制臺(tái)3、再點(diǎn)選下面的程式4、點(diǎn)選「啟用或關(guān)閉win功能」5、在這裡就可以選擇你要的開(kāi)啟了

Angular元件及其顯示屬性:了解非block預(yù)設(shè)值 Angular元件及其顯示屬性:了解非block預(yù)設(shè)值 Mar 15, 2024 pm 04:51 PM

Angular框架中元件的預(yù)設(shè)顯示行為不是區(qū)塊級(jí)元素。這種設(shè)計(jì)選擇促進(jìn)了元件樣式的封裝,並鼓勵(lì)開(kāi)發(fā)人員有意識(shí)地定義每個(gè)元件的顯示方式。透過(guò)明確設(shè)定CSS屬性 display,Angular組件的顯示可以完全控制,從而實(shí)現(xiàn)所需的佈局和響應(yīng)能力。

Vue組件實(shí)戰(zhàn):分頁(yè)組件開(kāi)發(fā) Vue組件實(shí)戰(zhàn):分頁(yè)組件開(kāi)發(fā) Nov 24, 2023 am 08:56 AM

Vue元件實(shí)戰(zhàn):分頁(yè)元件開(kāi)發(fā)介紹在網(wǎng)路應(yīng)用程式中,分頁(yè)功能是不可或缺的一個(gè)元件。一個(gè)好的分頁(yè)元件應(yīng)該展示簡(jiǎn)潔明了,功能豐富,而且易於整合和使用。在本文中,我們將介紹如何使用Vue.js框架來(lái)開(kāi)發(fā)一個(gè)高度可自訂化的分頁(yè)元件。我們將透過(guò)程式碼範(fàn)例來(lái)詳細(xì)說(shuō)明如何使用Vue元件開(kāi)發(fā)。技術(shù)堆疊Vue.js2.xJavaScript(ES6)HTML5和CSS3開(kāi)發(fā)環(huán)

Vue元件開(kāi)發(fā):進(jìn)度條元件實(shí)作方法 Vue元件開(kāi)發(fā):進(jìn)度條元件實(shí)作方法 Nov 24, 2023 am 08:56 AM

Vue元件開(kāi)發(fā):進(jìn)度條元件實(shí)作方法前言:在Web開(kāi)發(fā)中,進(jìn)度列是一種常見(jiàn)的UI元件,在資料要求、檔案上傳、表單提交等場(chǎng)景中常用來(lái)顯示作業(yè)的進(jìn)度。在Vue.js中,透過(guò)自訂元件的方式,我們可以很方便地實(shí)作一個(gè)進(jìn)度條元件,本文將介紹一種實(shí)作方法,並提供具體的程式碼範(fàn)例。希望能對(duì)Vue.js初學(xué)者有幫助。組件的結(jié)構(gòu)和樣式首先,我們需要定義進(jìn)度條組件的基本結(jié)構(gòu)和樣

See all articles