【问题标题】:Canceling previous pending request in React (Apollo client with useQuery)在 React 中取消先前的待处理请求(使用 useQuery 的 Apollo 客户端)
【发布时间】:2022-08-15 21:55:50
【问题描述】:

我在搜索页面上有搜索框,所以当输入 continue 时,它​​会为每种类型发送多个请求。我使用 debounce 来处理这个问题,所以我的请求减少了,但现在我需要取消待处理的请求,只有最新的请求应该在那里

我尝试了一些方法,但它对我不起作用。

Apollo 客户端版本 - 3.3.21 反应版本 - 17.0.2 React-dom 版本 - 17.0.2 节点 - 16

我试过的方法

  • 我也有同样的问题,请问您找到解决方案了吗?
  • 您是否能够跟踪 react 何时更新您的组件以及何时尝试查询?在处理类似功能时,我发现反应状态在需要运行的查询之前更新并解决了我的问题。

标签: reactjs graphql apollo-client react-apollo


【解决方案1】:

您可以使用描述的类似技术在查询本身上实现去抖动 here。 在页面之间“过度热心”导航的情况下,我用它来取消页面获取。奇迹般有效。

【讨论】:

    猜你喜欢
    • 2022-01-06
    • 2013-01-09
    • 2018-07-18
    • 2021-08-13
    • 2019-09-30
    • 2020-09-02
    • 2021-08-03
    • 2023-04-06
    • 2020-04-16
    相关资源
    最近更新 更多