(在多次编辑我原来的问题后,我决定彻底修改它,使其更加清晰和简洁。这是根据StackOverflow 的建议。)
设置:
创建一个新的 Nuxt 3 项目:
pnpm dlx nuxi init test-project
cd test-project
pnpm i
pnpm run dev -o
Run Code Online (Sandbox Code Playgroud)
app.vue像这样编辑:
<script setup>
const { data: thing } = useFetch("http://localhost:8000/things/1").then(res => {
console.log(res)
return res
})
</script>
<template>
<div>
<p>{{ thing }}</p>
</div>
</template>
Run Code Online (Sandbox Code Playgroud)
我添加了 console.log-statement 来跟踪提取发生的位置。
没有对配置进行任何更改。据我了解,Nuxt 3 默认为 SSR。
问题:
两种情况:
I. 当对代码进行更改app.vue并因此触发 HMR 时thing,将包含来自 API 的预期数据。
二. 但是,当浏览器刷新页面时thing将为空。段落标签将为空。
我的观察: