首頁 > web前端 > Vue.js > 主體

vue路由學習區分$route和$router,看看它們的差別

青灯夜游
發布: 2021-11-09 18:29:57
轉載
3103 人瀏覽過

路由的設定和跳躍中有兩個物件$router和$route,是不是很像,有些傻傻分不清。這篇文章帶大家了解vue路由中$route和$router的差別,希望對大家有幫助!

vue路由學習區分$route和$router,看看它們的差別

最近在學習vue的路由之間傳值,這就牽涉到了兩個物件 $route$router 這兩者之間的區別,自己也透過上網查了一些資料,最後做出以下的總結。

1、$router是VueRouter的一個對象,透過Vue.use(VueRouter)和Vue建構子得到一個router的實例對象,這個物件中是一個全域的對象,他包含了所有的路由,包含了許多關鍵的對象和屬性。 【相關推薦:《vue.js教學》】

vue路由學習區分$route和$router,看看它們的差別

#以history物件來舉例:

$router. push({path:'home'}),本質是在history堆疊中新增一個路由,在我們看來是切換路由,但本質是在新增一個history記錄

$router.replace({path :'home'}),//替換路由,沒有歷史記錄

$router.push('/login') ,跳到指定路由

2、$route是一個跳轉的路由對象,每個路由都會有一個$route對象,是一個局部的對象,可以取得對應的name,path,params,query等

vue路由學習區分$route和$router,看看它們的差別

這兩者不同的結構可以看出兩者的區別,他們的一些屬性是不同的。

$route.path 字串,等於目前路由對象的路徑,會被解析為絕對路徑,如/home/ews

$route.params 對象,含路有種的動態片段和全匹配片段的鍵值對,不會拼接到路由的url後面

$route.query 對象,包含路由中查詢參數的鍵值對。會拼接到路由url後面

$route.router 路由規則所屬的路由器

$route.matchd 數組,包含目前符合的路徑中所包含的所有片段所對象的設定參數對象

$route.name 目前路由的名字,如果沒有使用特定路徑,則名字為空

更多程式相關知識,請造訪:程式設計影片! !

以上是vue路由學習區分$route和$router,看看它們的差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:juejin.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板