SWR 简介
SWR 是由 Vercel 推出的轻量级 React 数据获取库,基于 stale-while-revalidate 策略。它通过智能缓存、请求去重、聚焦重试与轮询等机制,简化异步数据的获取与同步,提供更流畅的前端数据体验。
核心功能与特色
- 使用
useSWR等 Hook 快速获取数据,支持mutate、SWRConfig、useSWRInfinite等 API - 自动缓存与后台重新验证(background revalidation),优化首屏与交互体验
- 请求去重(deduping)、错误重试、聚焦/恢复时刷新和间隔轮询
- 可通过中间件扩展,易于与各种 fetch 库和 SSR 场景集成
适用场景与目标用户
适合在 Next.js/React 项目中用于服务端渲染、仪表盘、实时统计、分页/无限滚动及表单提交等场景。目标用户为前端工程师与需要低延迟数据刷新的产品团队。
主要优势或亮点
- API 简洁、上手快,降低学习成本
- 自动保持数据新鲜、减少重复请求,提升性能与 UX
- 与主流生态(SSR、fetch 库、Vercel