connection

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

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

import { connection } from 'next/server'

export default async function Page() {
  await connection()
  // 以下のすべてはプリレンダリングから除外されます
  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が導入されました。

On this page