导言
SWR是一个用于数据取取的React Hooks库.
名称“水资源“来源于 stale-while-revalidate,一个缓存无效策略 HTTP RFC 5861 (韩语)。 。 。 .
水资源 先从缓存(stale)返回数据,再发送请求(重新验证),最后再次带入最新数据.
只要有一个钩子,就可以显著地简化项目中的数据获取逻辑. 它还涵盖速度、正确性和稳定性等各个方面,以帮助你积累更好的经验:
- 快点, (中文(简体) ), 轻型 财务报告和审定财务报表 可重复使用 数据获取
- 运输和协议不可知性
- 内建 缓存 和请求复制
- 实时 经历
- 重定重点
- 网络恢复的振兴
- 投票
- 缓冲和滚动位置恢复
- 安保部门支助和特别支助组
- 局部变异 (optimistic UI)
- 内建的智能错误重试
- 类型脚本
- 反应悬浮
- 原生反应
...还有更多.
随着SWR,组件会得到 数据流不断自动更新因此,UI将永远 快点 财务报告和审定财务报表 反应。 。 。 .
查看完整文档和示例 swr.vercel.app (英语)。 。 。 .
快速启动
import useSWR from 'swr'
function Profile() {
const { data, error, isLoading } = useSWR('/api/user', fetcher)
if (error) return <div>failed to load</div>
if (isLoading) return <div>loading...</div>
return <div>hello {data.name}!</div>
}
在这个例子中,反应钩 useSWR 接受一个 key (单位:千美元) fetcher 函数.
这个 key 是请求的唯一标识符,通常是API的URL。 还有 fetcher 接受
key 作为参数,并同步返回数据.
useSWR 返回 3 个值: data, (中文(简体) ), isLoading 财务报告和审定财务报表 error当请求(fetcher)尚未完成时,
data 将会是 undefined 财务报告和审定财务报表 isLoading 将会是 true。当我们得到一个响应,它设定 data 财务报告和审定财务报表 error 基于结果
联 合 国 fetcher, (中文(简体) ), isLoading 以伪造和重报组件.
请注意: fetcher 可以是任何同步函数,也可以使用您最喜欢的数据比对
库来处理这部分.
查看完整文档和示例 swr.vercel.app (英语)。 。 。 .
作者数
这个库是由后面的团队创建的 下一个.js在社区的帮助下:
- 舒鼎 (编)@ shuding (英语)) - (英语) 维塞尔
- 刘家achi(@huozhi:我无法想象) - (英语) 维塞尔
- 吉列尔莫·劳克(签名)@rauchg (英语)) - (英语) 维塞尔
- 乔·哈达德(英语:@timer150 (英语)) - (英语) 维塞尔
- 帕科·科莱特(Paco Coursey) (英语:@pacocourey (英语)) - (英语) 维塞尔
多亏了陈瑞安 提供了精彩的 swr npm 软件包名称 !
许可证
麻省理工学院执照.
