メインコンテンツまでスキップ

dynamicIO

dynamicIOフラグは、Next.jsの実験的な機能で、app routerでのデータフェッチ操作が明示的にキャッシュされない限り、プリレンダーから除外されることを意味します。これはサーバーコンポーネントでの動的データフェッチのパフォーマンスを最適化するのに役立ちます。

この機能は、事前レンダリングされたキャッシュから提供するのではなく、実行時に新しいデータフェッチを必要とするアプリケーションに有用です。

use cacheと併用することが期待されます。これにより、特定のアプリケーション部分がページ、関数、またはコンポーネントレベルでuse cacheを使用してキャッシュされていない限り、データフェッチはデフォルトで実行時に行われます。

使用方法

dynamicIOフラグを有効にするには、next.config.tsファイルのexperimentalセクションでtrueに設定します:

next.config.ts
import type { NextConfig } from 'next'

// NextConfig型のnextConfigオブジェクトを定義
const nextConfig: NextConfig = {
experimental: {
dynamicIO: true, // dynamicIOフラグを有効にする
},
}

export default nextConfig

dynamicIOが有効になっている場合、以下のキャッシュ関数と設定を使用できます:

注意

  • dynamicIOは実行時に新しいデータフェッチを保証することでパフォーマンスを最適化できますが、プリレンダーされたコンテンツを提供するよりも遅延が増える可能性があります。