generateStaticParams
https://nextjs.org/docs/app/api-reference/functions/generate-static-params
https://nextjs.org/docs/app/building-your-application/data-fetching/incremental-static-regeneration
ビルド時にのみ実行される関数
Dynamic Routes で利用すると、ビルド時に静的にルートを生成することができる
Static Rendering
Full Route Cache
戻り値はオブジェクトの配列を返す必要があり、各オブジェクトは Dynamic Routes のパスパラメータを持つ
table:_
ルートの例 generateStaticParams の戻り値の型
/product/[id] { id: string }[]
/products/[category]/[product] { category: string, product: string }[]
/products/[...slug] { slug: string[] }[]
revalidate を指定して Data Cache を作成すると、指定した時間内は Full Route Cache が再利用される
時間を過ぎると、Full Route Cache が更新される
使用例
code:app/product/id/page.tsx
export function generateStaticParams() {
return id: '1' }, { id: '2' }, { id: '3' }
}
export default function Page({ params }: { params: { id: string } }) {
const { id } = params
// ...
}
上記の場合、/product/1 ・/product/2・/product/3 の場合は静的にルートが生成される
それ以外の場合は、リクエスト時に生成される
#Next.js