useRouter与useRoute:Vue Router中的两个关键Hook,它们有何不同?
useRouter
和useRoute
是Vue Router库中的两个核心钩子函数。
useRouter
: 这个函数返回的是全局路由器实例的引用,可以用来操作路由。例如,你可以使用它来进行路由跳转。
import { useRouter } from 'vue-router'
export default {
setup() {
const router = useRouter()
function navigateToHome() {
router.push('/home')
}
return { navigateToHome }
}
}
useRoute
: 这个函数返回当前路由对象的引用,可以用来获取路由的参数、查询等信息。
import { useRoute } from 'vue-router'
export default {
setup() {
const route = useRoute()
return {
params: route.params,
query: route.query
}
}
}
useRouter
和useRoute
的主要区别在于它们提供的访问级别不同:useRouter
提供对路由操作的访问,而useRoute
提供对当前路由的只读访问。
评论已关闭