我正在将 Vue3 与 vue-router 4.0.5 一起使用,并且遇到一个问题,其中 useRoute() 似乎可以正确检索路线,但路线的查询未定义,即使存在查询也是如此。
对于路径/search?q=vue,预期等于searchQuery但vue返回未定义。
在模板中,{{ $route.query.q }}正确返回查询值。
import { useRoute } from "vue-router"
export default {
name: "Search",
setup() {
const route = useRoute()
const searchQuery = route.query.q
console.log(route)
console.log(searchQuery)
return {
searchQuery
}
}
}Run Code Online (Sandbox Code Playgroud)
<template>
<div>{{ $route.query.q }}</div>
</template>Run Code Online (Sandbox Code Playgroud)
登录到控制台时,该route对象已正确记录并包含路由的查询对象,但searchQuery未定义。
我想知道为什么searchQuery在这个例子中返回为未定义。