我正在尝试为后端操作设置进度条,可能需要一段时间才能完成。
- 用户单击按钮导出文件
- API 响应具有后端进程的令牌 使用
- useInterval,我每半秒检查一次进度百分比(使用另一个端点,发送令牌(以更新我的进度条组件
中的代码以重现问题,在我的 Codesandbox 中,单击按钮时,我运行 useInterval 每 4 秒获取一张新的随机猫图片并更新我的钩子。
代码沙盒
据我了解,问题在于我在自定义钩子(useInterval(中调用了一个钩子,但我不知道另一种方法可以做到这一点,因为本机setInterval不适用于钩子。
我使用了使用间隔包
您不必用 useEffect
包装useInterval
。在内部,useInterval
调用useEffect
来完成这项工作。
您可以更改传递给组件中useInterval
的值,新值将正确应用。您可以更改延迟或回调参数,useInterval
将应用它们。
为了展示,我添加了停止按钮,可以停止检索猫。
这是猫的工作解决方案:-(