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
能通过确保运行时获取最新数据来优化性能,但与提供预渲染内容相比,可能会引入额外的延迟。