page.js
pageは、route に固有の UI です。
app/blog/[slug]/page.tsx
export default function Page({
params,
searchParams,
}: {
params: { slug: string }
searchParams: { [key: string]: string | string[] | undefined }
}) {
return <h1>My Page</h1>
}
app/blog/[slug]/page.js
export default function Page({ params, searchParams }) {
return <h1>My Page</h1>
}
Props
params (optional)
そのページまでの root セグメントからdynamic route パラメータを含む object。例えば:
| Example | URL | params |
|---|---|---|
app/shop/[slug]/page.js | /shop/1 | { slug: '1' } |
app/shop/[category]/[item]/page.js | /shop/1/2 | { category: '1', item: '2' } |
app/shop/[...slug]/page.js | /shop/1/2 | { slug: ['1', '2'] } |
searchParams (オプション)
現在の URL のsearch parameters を含む object。例えば:
| URL | searchParams |
|---|---|
/shop?a=1 | { a: '1' } |
/shop?a=1&b=2 | { a: '1', b: '2' } |
/shop?a=1&a=2 | { a: ['1', '2'] } |
Good to know:
searchParamsは、事前に値を知ることができない**Dynamic API**です。これを使用すると、ページは request 時にdynamic レンダリングを選択します。searchParamsは平易な JavaScript object を返し、URLSearchParamsインスタンスではありません。
Version History
| Version | Changes |
|---|---|
v13.0.0 | page が導入されました。 |