聚焦时重新请求
有些时候,你要确保多个浏览器窗口之间数据的一致性;又或者是当用户电脑在休眠状态重新激活后,页面的数据需要同步到最新状态时。refreshOnWindowFocus
可能会为你节省很多逻辑代码。
在下面的例子 🌰 中,我们使用 iframe 来模拟浏览器的多个选项卡。当你在任意一个选项卡中修改登录状态,然后切换到另一个选项卡,此时数据将会被同步。
你也可以复制示例上方地址栏的链接,然后在浏览器中尝试这个功能。
重新聚焦间隔时间
如果你不希望用户在短时间内频繁触发 refreshOnWindowFocus
导致频繁请求的话,你可以修改 refocusTimespan
的值,从而延长触发的间隔。
const { data } = useRequest(getUser, {
refreshOnWindowFocus: true,
refocusTimespan: 2 * 1000, // 2s
});