vue-Router中name的使用
在講vue-Router中name使用之前我們需要先明白幾點:
const routes = [{
path:'/Home',
component:HomeCom,
name:'HomeName'
}]
1、在單頁面應用中,網頁具體路徑顯示是由vue-router配置中 path決定的,path設定的是什麼就顯示什麼,和name無關。
2、不同路由路徑下頁面渲染的內容,是根據component所對應的元件來進行渲染的,和name無關。
其實name就相當於給你的path取個別名,方便使用,路由並不是一定要設定name值。(如果不設定name,vue-router預設name值為 default)
注意:當我們使用params傳參時,在路由裡一定也要使用 :來匹配對應引數,不然在重新整理頁面的時候引數將會丟失。
常見的幾種用途
1.指定頁面路由,並傳遞引數
<!-- 路由程式碼配置 -->
{
path:'/Liantong/:id',
component:Liantong,
name:'LiantongName'
}
<!-- 頁面導航跳轉 -->
<router-link :to="{name:'LiantongName',params:{id:100}}">
<el-menu-item index="/Liantong">
<i class="el-icon-menu"></i>
<span slot="title">聯通資料</span>
</el-menu-item>
</router-link>
其實在這裡使用
同樣可以實現頁面導航跳轉,但是這樣的話就不能直接傳遞params引數了。
2.獲取元件的name值,以供頁面使用
<!-- 路由程式碼配置 -->
{
path:'/Yidong',
component:Yidong,
name:'我是移動name'
}
<!-- 頁面渲染 -->
<template>
<div class='container'>
<h3>{{$route.name}}</h3>
</div>
</template>
當針對不同頁面渲染不同選單並顯示選單名的時候,我們可以把選單名賦值給路由name,然後進行相應處理。
3.同個路由,渲染多個檢視
有時候,我們對於一個路由,採用多個檢視來渲染,此時就需要檢視name值來進行標記。
不過此時要注意 在路由物件中要把component 改為components物件。
<!-- 路由程式碼配置 -->
{
path:'/Dianxin',
components:{
default: DianxinOne, //default 預設的router-view名字
DianxinTwo: DianxinTwo,
DianxinThr: DianxinThr
},
name:'Dianxin'
},
<div>
<el-main>
<router-view></router-view> //渲染預設DianxinOne元件
<router-view name="DianxinTwo"></router-view> //渲染DianxinTwo元件
<router-view name="DianxinThr"></router-view> //渲染DianxinThr元件
</el-main>
</div>
另外vue中name使用和vue-router中name使用沒有直接聯絡,是兩個概念。
相關文章
- [vue-router] Duplicate named routes definition: { name: "home", path: "/home" }Vue
- vue-router的使用Vue
- Vue-Router的使用方法Vue
- Vue-router的使用姿勢Vue
- vue-router中scrollBehavior的妙用Vue
- vue-router.esm.js:17 [vue-router] Duplicate named routes definition: { name: “home“, path: “/home“ }VueJS
- Vue-router外掛使用Vue
- vue-router之addRoutes使用遇到的坑Vue
- vue-router中scrollBehavior的巧妙用法Vue
- HTML中的tag、element、class、name、idHTML
- vue升級之路(三)-- vue-router的使用Vue
- 叢集修改OCR中記錄的db_unique_name以及db_name
- Android Studio中的package name和application IDAndroidPackageAPP
- 5分鐘瞭解vue-router的基本使用Vue
- Python中“if __name__=='__main__PythonAI
- Django裡URL配置中name引數的作用Django
- element-ui中row-class-name的用法UI
- python中的name等於main是什麼PythonAI
- 說說如何使用 vue-router 外掛Vue
- Vue-router 中hash模式和history模式的區別Vue模式
- python中的__name__=='__main__'如何簡單理解PythonAI
- Python中if __name__ == '__main__'作用解析PythonAI
- vue-router的鉤子Vue
- vue-router 原始碼:實現一個簡單的 vue-routerVue原始碼
- vue-routerVue
- 淺談Vue-router使用方法及動態路由和巢狀路由的使用Vue路由巢狀
- WPF筆記3——x:Name 與 Name筆記
- 【VUE】vue-router的基本用法Vue
- Oracle修改instance_name、db_name、db_unique_name、service_namesOracle
- [程式設計題]查詢所有員工的last_name和first_name以及對應的dept_name程式設計AST
- 在移動端使用vue-router和keep-aliveVueKeep-Alive
- vue · 使用vue-router設定每個頁面的titleVue
- vue-router教程Vue
- QT中error: xxx does not name a type xxx錯誤QTError
- SQL實戰50.將employees表中的所有員工的last_name和first_name通過(‘)連線起來。SQLAST
- C++霧中風景15:聊聊讓人抓狂的Name ManglingC++
- 說說如何使用 vue-router 實現頁面跳轉Vue
- IDBDatabase.nameDatabase