Menu

connection

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

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

app/page.tsx
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に置き換えられます。
  • この関数は、動的レンダリングが必要な場合で、一般的なDynamic APIが使用されない場合にのみ必要です。

バージョン履歴

バージョン変更点
v15.0.0-RCconnection を導入。