Nuxt 3 中的 useFetch 在组件里怎么用才不会报错?

技术秋花 阅读 37

我刚学 Nuxt 3,想在组件里用 useFetch 获取数据,但一刷新页面就报错说“Cannot read property ‘url’ of undefined”。是我写法不对吗?

我试过把 useFetch 放在 setup 里,也试过直接在 script setup 顶层调用,都不行。下面是我的代码:

<script setup>
const { data } = useFetch('/api/user')
</script>

<template>
  <div>{{ data?.name }}</div>
</template>
我来解答 赞 14 收藏
二维码
手机扫码查看
1 条解答
UP主~婧妍
最简单的办法,把 useFetch 包在 useAsyncData 里就不会报错了:

<script setup>
const { data } = await useAsyncData('user', () => useFetch('/api/user'))
</script>


或者在 nuxt.config.ts 里把 ssr:false 关了,但这样SEO会炸,懒人不推荐。
点赞
2026-03-08 07:01