请求重试策略
策略类型
useRetriableRequest
在使用扩展 hooks 前,确保你已熟悉了 alova 的基本使用。
请求失败可自动重试的 use hook,你可以将它用于重要的请求上。
特性
- 自定义重试次数或按 条件判断是否需要重试;
- 重试延迟机制;
- 手动停止重试;
使用
基本用法
import { useRetriableRequest } from 'alova/client';
const {
// 加载状态,在重试期间一直为true,直到重试成功或失败
loading,
// 响应数据
data,
// 请求错误信息,每次请求或重试失败都将会有error实例
// 上一次的error实例将被覆盖
error,
// 每次请求或重试失败都将触发onError事件
onError,
// 请求重试事件,在每次重试请求发出后立即触发
onRetry,
// 请求重试失败事件
// 达到最大重试次数仍未请求成功,或手动停止重试都将触发
onFail,
// 请求或重试成功事件
onSuccess,
// 每次请求或重试,无论成功或失败都将触发完成事件
onComplete
} = useRetriableRequest(request);
useRetriableRequest的最大请求重试次数默认为 3,且每次将延迟 1 秒重试。同时也会默认发出请求,可以通过设置immediate为 false 改变行为。