跳到主要內容

dynamicIO

此功能目前在 Canary 管道中提供,並且可能會有所變動。請嘗試升級 Next.js 來體驗,並在 GitHub 上分享您的意見回饋。

dynamicIO 標記是 Next.js 中的一項實驗性功能,它會導致 App Router 中的資料抓取操作被排除在預先渲染之外,除非它們被明確地快取。這對於最佳化伺服器元件中動態資料抓取的效能非常有用。

如果您的應用程式需要在執行階段抓取最新的資料,而不是從預先渲染的快取中提供內容,則此功能非常有用。

預期它會與 use cache 搭配使用,以便您的資料抓取預設在執行階段發生,除非您在頁面、函式或元件層級使用 use cache 定義應用程式的特定部分進行快取。

用法

若要啟用 dynamicIO 標記,請在您的 next.config.ts 檔案的 experimental 區段中將其設定為 true

next.config.ts
import type { NextConfig } from 'next'
 
const nextConfig: NextConfig = {
  experimental: {
    dynamicIO: true,
  },
}
 
export default nextConfig

當啟用 dynamicIO 時,您可以使用下列快取函式和設定

注意事項

  • 雖然 dynamicIO 可以透過確保在執行階段抓取最新資料來最佳化效能,但相較於提供預先渲染的內容,它也可能會引入額外的延遲。