我正在遵循一个指南,其中 api 路由 的构建方式如下:
1 创建server/api/route.js文件:
export default defineEventHandler((event) => {
return {
message: `hello api route`
}
})
2 在组件中使用 api 路由,如下所示:
<script setup>
const { data: message } = await useFetch('/api/route')
</script>
<template>
<div>
<p>api data {{ message }}</p>
</div>
</template>
这有效,但是当我尝试在 1. 中添加 查询参数 时:
export default defineEventHandler((event) => {
const { name } = useQuery(event)
return {
message: `hello api name parameter ${name}`
}
})
并在组件中调用它2.:
<script setup>
const { data: message } = await useFetch('/api/route?name=mario')
</script>
<template>
<div>
<p>api data {{ message }}</p>
</div>
</template>
message 属性为空。似乎 useQuery(event) 产生一个空变量。知道为什么这不起作用吗?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
尝试使用
getQuery而不是useQueryexport default defineEventHandler((event) => { const { name } = getQuery(event); return { message: `hello api name parameter ${name}`, }; });不再支持
useQuery(event)。您可以使用getQuery(event)getQuery 的 h3 文档