前端知库

React 的 cache API 解决什么问题?

理解 React cache 的请求级记忆化边界、服务端使用限制,以及它与浏览器缓存和数据请求库的区别。

参考答案

React 的 cache 用于记忆化函数调用结果,主要服务于 React 服务端渲染场景,让同一渲染请求中相同参数的读取可以复用结果。它不是一个跨请求、跨用户的永久缓存,也不等于 HTTP 缓存或数据库缓存。

缓存函数的参数必须稳定,函数本身也要在模块作用域保持同一个引用;在组件中每次重新创建函数会失去复用效果。错误通常也会被记忆化,因此要明确失败是否应该在当前渲染中共享。

服务端缓存不能拿来保存用户私密数据而不区分请求边界。实际项目还要结合框架的数据缓存、失效策略和请求取消,核对当前 React 与框架版本的支持范围。