您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關vue中$route和$router的區別是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
路由的設置和跳轉中有兩個對象$router和$route,是不是很像,有些傻傻分不清。本篇文章帶大家了解一下vue路由中$route和$router的區別,希望對大家有所幫助!
最近在學習vue的路由之間傳值,這就涉及到了兩個對象 $route
和 $router
這兩者之間的區別,自己也通過上網查了一些資料,最后做出以下的總結。
1、$router
是VueRouter的一個對象,通過Vue.use(VueRouter)和Vue構造函數得到一個router的實例對象,這個對象中是一個全局的對象,他包含了所有的路由,包含了許多關鍵的對象和屬性。
以history對象來舉例:
$router.push({path:'home'}),本質是向history棧中添加一個路由,在我們看來是切換路由,但本質是在添加一個history記錄
$router.replace({path:'home'}),//替換路由,沒有歷史記錄
$router.push('/login') ,跳轉到指定路由
2、$route
是一個跳轉的路由對象,每一個路由都會有一個$route對象,是一個局部的對象,可以獲取對應的name,path,params,query等
這兩者不同的結構可以看出兩者的區別,他們的一些屬性是不同的。
$route.path 字符串,等于當前路由對象的路徑,會被解析為絕對路徑,如/home/ews
$route.params 對象,含路有種的動態片段和全匹配片段的鍵值對,不會拼接到路由的url后面
$route.query 對象,包含路由中查詢參數的鍵值對。會拼接到路由url后面
$route.router 路由規則所屬的路由器
$route.matchd 數組,包含當前匹配的路徑中所包含的所有片段所對象的配置參數對象
$route.name 當前路由的名字,如果沒有使用具體路徑,則名字為空
看完上述內容,你們對vue中$route和$router的區別是什么有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。