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 が導入されました。 |