vue的$router
與$route
的區(qū)別,很容易混淆中贝。
下面就簡單的介紹有什么區(qū)別:
-
$router
是VueRouter
對象的實例违寿,是全局的路由對象,包含了路由組件的很多屬性
this.$router.push({
path:'/home', 路由地址
name:'home', 路由名字
query:{name:'張三'}镀首, 路由參數(shù) 相當于:/home?name= '張三'
params:{name:'李四'} 路由參數(shù)鍵值對
})
this.$router.push的本質是為history添加一條記錄
- 每個路由都有一個
$route
對象,是局部的路由對象鼠次,可以動態(tài)的獲取對應的 路由傳遞的name
,path
,query
,params
等的屬性值
this.$router.path 得到路由地址
this.$router. name 得到路由名字
this.$router.query 得到路由參數(shù) 相當于:/home?name= '張三'
this.$router.params 得到路由參數(shù)鍵值對
使用總結:
- $router是路由對象更哄,可以切換路由同時傳參
- $route 是路由對象的一個對象芋齿,可以獲取當前路由的各個屬性值