dynamicIO
dynamicIO
是 Next.js 中的一項實驗性功能,它會導致 App Router 中的資料獲取操作在預渲染時被排除,除非這些操作被明確快取。這對於優化伺服器元件 (Server Components) 中的動態資料獲取效能非常有用。
當您的應用程式需要在運行時獲取最新資料,而非從預渲染快取提供服務時,此功能特別實用。
預期此功能會與 use cache
搭配使用,如此一來,除非您在頁面、函式或元件層級使用 use cache
定義特定部分需要快取,否則資料獲取預設會在運行時進行。
使用方式
要啟用 dynamicIO
功能,請在 next.config.ts
檔案的 experimental
區段中將其設為 true
:
當啟用 dynamicIO
時,您可以使用以下快取函式與配置:
use cache
指令- 搭配
use cache
使用的cacheLife
函式 cacheTag
函式
注意事項
- 雖然
dynamicIO
可以通過確保在運行時獲取最新資料來優化效能,但與提供預渲染內容相比,它也可能會引入額外的延遲。