我面临 nuxt 3 的问题,当我使用 SSG 部署我的网站时,第一个路由(索引路由)加载了 2 个组件,例如 如果我有这样的index.vue
<template>
<Component1 />
<Component2 />
</template>
会显示成这样
<template>
<Component1 />
<Component1 />
<Component2 />
<Component2 />
</template>
这仅适用于主路线(
/
),当我切换到任何其他路线然后回来时,问题似乎已解决,但当我刷新时,它总是生成双组件。
我知道这是一个迟来的答案,但为了陷入这个问题的人们。 nuxt 有时会混合或合并 DOM,因此必须确保 DOM 完全显示,否则使用 client-only 将防止出现此错误。 或者将 onMounted 与 v-if 一起使用,以确保组件完全可见。 即使是SSG,原理也和SSR一样。