Provides Nuxt 4 patterns for hydration safety, SSR-safe data fetching with useFetch/useAsyncData, route rules (prerender, SWR, ISR), and lazy loading/hydration performance.
How this skill is triggered — by the user, by Claude, or both
Slash command
/everything-claude-code:nuxt4-patternsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
在构建或调试具有 SSR、混合渲染、路由规则或页面级数据获取的 Nuxt 4 应用时使用。
在构建或调试具有 SSR、混合渲染、路由规则或页面级数据获取的 Nuxt 4 应用时使用。
useFetch、useAsyncData 或 $fetch 进行页面或组件数据获取Date.now()、Math.random()、仅浏览器 API 或存储读取直接放入 SSR 渲染的模板状态中。onMounted()、import.meta.client、ClientOnly 或 .client.vue 组件之后。useRoute() 组合函数,而不是 vue-router 中的那个。route.fullPath 来驱动 SSR 渲染的标记。URL 片段是仅客户端的,这可能会造成水合不匹配。ssr: false 视为真正仅浏览器区域的逃生舱,而不是不匹配的默认修复。await useFetch() 进行 SSR 安全的页面和组件 API 读取。它将服务器获取的数据转发到 Nuxt 负载中,并避免在水合时再次获取。$fetch() 调用、需要自定义键或组合多个异步源时使用 useAsyncData()。useAsyncData() 提供稳定的键以进行缓存重用和可预测的刷新行为。useAsyncData() 处理程序无副作用。它们可以在 SSR 和水合期间运行。$fetch(),而不是应该从 SSR 水合的顶级页面数据。lazy: true、useLazyFetch() 或 useLazyAsyncData()。在 UI 中处理 status === 'pending'。server: false。pick 修剪负载大小,当深度反应性不必要时优先使用较浅的负载。const route = useRoute()
const { data: article, status, error, refresh } = await useAsyncData(
() => `article:${route.params.slug}`,
() => $fetch(`/api/articles/${route.params.slug}`),
)
const { data: comments } = await useFetch(`/api/articles/${route.params.slug}/comments`, {
lazy: true,
server: false,
})
优先在 nuxt.config.ts 中使用 routeRules 进行渲染和缓存策略:
export default defineNuxtConfig({
routeRules: {
'/': { prerender: true },
'/products/**': { swr: 3600 },
'/blog/**': { isr: true },
'/admin/**': { ssr: false },
'/api/**': { cache: { maxAge: 60 * 60 } },
},
})
prerender:构建时的静态 HTMLswr:提供缓存内容并在后台重新验证isr:在支持的平台上进行增量静态再生成ssr: false:客户端渲染路由cache 或 redirect:Nitro 级响应行为按路由组选择路由规则,而不是全局。营销页面、目录、仪表板和 API 通常需要不同的策略。
Lazy 前缀动态导入非关键组件。v-if 有条件地渲染懒组件,以便在 UI 实际需要之前不加载块。<template>
<LazyRecommendations v-if="showRecommendations" />
<LazyProductGallery hydrate-on-visible />
</template>
defineLazyHydrationComponent() 配合可见性或空闲策略。NuxtLink 进行内部导航,以便 Nuxt 可以预取路由组件和生成的负载。useFetch 或 useAsyncData,而不是顶级 $fetchnpx claudepluginhub aaione/everything-claude-code-zhProvides Nuxt 4 patterns for hydration safety, SSR-safe data fetching with useFetch/useAsyncData, route rules for prerender/SWR/ISR, lazy loading, and performance optimization.
Provides Nuxt 4 patterns for hydration safety, SSR-safe data fetching with useFetch/useAsyncData, route rules, and lazy loading.
Optimizes Nuxt 4 production: hydration mismatch debugging, Core Web Vitals performance, Vitest testing, Cloudflare/Vercel/Netlify deployment, v3 to v4 migration.