缓存
Next 的激进缓存策略 静态页面构建时创建缓存 数据默认缓存 取消缓存 revalidatePath() 四种激进的缓存策略 请求记忆 Next 会存储相同配置的请求,避免重复请求, 缓存维持在整个运行周期 取消缓存:
- revalidatePath、revalidateTag(获取 fetch next 属性中的 tag)
- fetch(url, { cache: 'no-store',或者 next: { revalidate: 5 // 秒数 })
- dynamic
- connection() 将一个函数的构建时静态渲染关闭,让它在运行时动态渲染 你可以手动导出 revalidate,dynamic // export const revalidate = 5;export const dynamic = 'force-dynamic'; 数据缓存 存储和重用从数据源获取的数据。 背后思想:避免重复的数据删除请求、或避免重复请求。除非数据变化,否则完全避免请求 持续缓存,除非手动验证,或者你设定时间过期 全路由缓存 服务端构建时缓存整个页面。 这个页面、整个 html 和整个 react 服务器组件有效负载的路由全都缓存 避免了某些数据源的额外往返,避免了重新呈现整个 html 持续缓存,除非数据缓存失效或者手动验证 让数据缓存失效的办法也能使全路由缓存失效。 路由缓存 客户端缓存。 Nextjs 将一些服务器组件存储在浏览器内存中,确保快速的页面切换,避免服务请求 当服务器数据更新时,此缓存无效 手动让函数编程缓存的 import { cache } from 'react';export const a = cache(function() {}});
来源整理自:vue3js.cn 面试官系列



