gpt4 book ai didi

javascript - 如何防止 react-query 最初获取但启用重新获取?

转载 作者:行者123 更新时间:2023-12-04 17:19:56 31 4
gpt4 key购买 nike

我正在使用 react-query v3.13从 API 获取数据。
我想要做的是从某个点(例如,单击开始按钮时)定期获取 API,而不是从调用 useQuery 时开始。
我尝试了以下方法。

  • 设置 enabled属性(property)给 false禁用自动查询,但它也禁用重新获取。
    我找不到重新启用/设置 enabled 的方法属性(property)给 true .我不得不使用 setTimeout由我自己定期重新获取。
  • 保留enabled属性为 true但我找不到禁用初始提取的方法。

  • 有没有合适的方法来做到这一点?

    最佳答案

    如果您硬编码 enabled false 的选项,您仍然可以使用 refetch您从 useQuery 返回的方法强制触发提取。但查询仍将被禁用,因此没有后台更新。
    如果您想要一个被禁用但在调用函数时启用的惰性,最好的方法是使用具有本地状态的 useQuery 的简单抽象:

    const useLazyQuery = (key, fn, options) => {
    const [enabled, setEnabled] = useState(false)
    return [() => setEnabled(true), useQuery(key, fn, { ...options, enabled })]
    }

    关于javascript - 如何防止 react-query 最初获取但启用重新获取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66757027/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com