缓存 与 预加载
你可以通过设置 cacheKey
来启用缓存功能。当缓存启用后 VueRequest 会把当前请求的结果缓存下来,等到下次该组件初始化时,亦或者另外一个设置了同样 cacheKey
的请求初始化时,如果有缓存,则会优先返回缓存的数据,然后再在背后发起新的请求。这样就确保数据以最快的数据展现在用户面前,这也是预加载的一种形式。
缓存时间
你还可以设置缓存的回收时间。当缓存数据的时间超过了设定的 cacheTime
(默认为 600000 毫秒,即 10 分钟),VueRequest 会自动丢弃该缓存的数据,等到下次发起请求后,重新缓存新的数据。
const { data } = useRequest('api/date', {
cacheKey: 'date',
cacheTime: 300000, // 5 minutes
});
保鲜时间
如果你能确保缓存下来的数据,在一定时间内不会有任何更新的,你可以设置一个保鲜时间 staleTime
(默认为 0,即不保鲜), 当设置保鲜时间后,VueRequest 在该时间内会认为缓存的数据是新鲜的,从而不会发起新的请求,这能为一些定时更新的接口减轻请求的压力。
const { data } = useRequest('api/date', {
cacheKey: 'date',
staleTime: 3600000, // 60 minutes
});