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
が有効になっている場合、以下のキャッシュ関数と設定を使用できます:
use cache
ディレクティブcacheLife
関数とuse cache
の併用cacheTag
関数
注意
dynamicIO
は実行時に新しいデータフェッチを保証することでパフォーマンスを最適化できますが、プリレンダーされたコンテンツを提供するよりも遅延が増える可能性があります。