$route和$router是Vue.js框架中的兩個非常重要的對象。$route提供了當(dāng)前路由的信息,可以獲取當(dāng)前路由的路徑、參數(shù)等信息。而$router則用于路由的控制,可以通過$router來實(shí)現(xiàn)路由的跳轉(zhuǎn)、重定向、參數(shù)傳遞等操作。
在Vue.js中,我們可以通過訪問組件的$this對象來獲取$route和$router對象。例如:
this.$route //獲取當(dāng)前路由信息 this.$router //獲取路由控制對象
通過$route獲取的當(dāng)前路由信息包含了當(dāng)前路由的路徑、參數(shù)、查詢參數(shù)等信息。例如:
console.log(this.$route.path) //獲取當(dāng)前路由的路徑 console.log(this.$route.params) //獲取當(dāng)前路由的參數(shù) console.log(this.$route.query) //獲取當(dāng)前路由的查詢參數(shù)
而$router對象則可以用于路由的導(dǎo)航、傳遞參數(shù)等操作。例如:
//路由跳轉(zhuǎn) this.$router.push('/home') //路由傳遞參數(shù) this.$router.push({ path: '/home', query: { name: 'user', age: 18 } })
需要注意的是,$router.push()方法可以傳遞路徑、路由對象等多種參數(shù)類型,可以通過路徑字符串、路由對象、命名路由等方式進(jìn)行跳轉(zhuǎn)。
總之,$route和$router是Vue.js框架中不可或缺的核心對象,對于前端開發(fā)者來說,熟練掌握它們的用法能夠大大提升開發(fā)效率。