コンテンツをスキップ

connection

connection()関数を使用すると、レンダリングが受信するユーザーリクエストを待機してから続行するように指示できます。

これは、コンポーネントが動的APIを使用しないが、ビルド時ではなく実行時に動的にレンダリングしたい場合に便利です。これは通常、Math.random()new Date()のように、意図的にレンダリングの結果を変更したい外部情報にアクセスするときに発生します。

app/page.tsx
import { connection } from 'next/server'
 
export default async function Page() {
  await connection()
  // Everything below will be excluded from prerendering
  const rand = Math.random()
  return <span>{rand}</span>
}

リファレンス

function connection(): Promise<void>

パラメーター

  • この関数はパラメーターを受け付けません。

戻り値

  • この関数はvoid Promiseを返します。消費されることは想定されていません。

知っておくと良いこと

  • connectionは、Next.jsの将来とより適切に整合させるため、unstable_noStoreを置き換えます。
  • この関数は、動的レンダリングが必要であり、一般的な動的APIが使用されていない場合にのみ必要です。

バージョン履歴

バージョン変更点
v15.0.0connection 安定化。
v15.0.0-RCconnection 導入。