问题标签 [react-query]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
804 浏览

reactjs - 依赖于多个先前 refetchInterval 查询的串行查询

我在应用程序中有一个轮询流程,它是一系列运行依赖于之前完成的查询。直到我开始使用 react-query,我才使用async/awaitPromise.all()知道以前的请求是否完成。

流程示例(使用 react-query 之前):

有了这个,我得到了一个轮询间隔,我知道 query3 只有在 query1 && query2 完成后才会运行。

现在我正在努力使用react-query. 我知道enabled可以传递给useQuery钩子的参数,但它只适用于第一次运行:

上面的代码片段给我的结果是第一次间隔运行没问题,query3只在我有之后运行data1data2但是在第二次间隔运行中,因为data1并且data2已经不是假的,它只是并行发送所有查询,这不是理想的结果。

可能值得一提的是问题的背景和数据。data1并且data2不相互依赖(可以并行完成),但应该在之前获取,data3因为data3它是基于来自data1和的参数呈现的data2

你能给我建议吗?谢谢。

0 投票
0 回答
272 浏览

firebase - 使用 react-virtualized InfiniteLoader 使用 react-query

我一直在尝试使react-queryand之间react-virtualized的集成成为InfiniteLoader可能,但是我被困在了一个特定的点上。

即,使用( ) 调用InfinteLoader'sfetchMore函数。这很重要,因为批次大小可能会有所不同,并且通常初始批次大小大于后续批次。因此,必须有权访问或 计算的。对于这个集成,我一直在使用 firebase sdk,但是游标的主体使用得更广泛。我不会详细说明,但是,集合过滤器接受对最后加载的文档的引用。幸运的是,该函数是使用最后一批调用的,并且该批中的最后一个文档代表下一批开始之后的光标。关键是没有办法同时通过IndexRange{ startIndex: number, stopIndex: number }queryFnstartIndexstopIndexlimitfirebasestartAftergetFetchMorelimit以及对查询功能的最后一个文档引用,以便加载新批次。

有解决方法吗?

0 投票
1 回答
2216 浏览

typescript - react-query 如何使用 useInfiniteQuery?

我想将查询传递给 getAnalysisListByPatientIdApi 所以我尝试将查询放入 useInfiniteQuery 数组的第一个参数中,例如useQuery

我希望从 getAnalysisListByPatientIdApi 中的 useInfiniteQuery 获得 { patientId: selectedPatientId },但发生错误:Type '{ patientId: string; }' is not assignable to type 'string'

如何解决这个问题?有任何想法吗?

0 投票
1 回答
12015 浏览

reactjs - 使用 React-Query 挂钩有条件地调用 API

我正在使用 react-query 进行 API 调用,在这种问题情况下,我只想在满足某些条件时调用 API。

我有一个输入框,用户可以在其中输入搜索查询。当输入值更改时,将使用输入内容作为搜索查询调用搜索服务器......但前提是输入值的长度超过 3 个字符。

在我的反应组件中,我正在调用:

我的getSearchResults函数将有条件地进行 API 调用。

我们不能在条件中使用钩子 - 所以我将条件放入我的 API 调用函数中。

这几乎可以工作。如果我输入一个简短的查询字符串,则不会发出 API 请求,并且我会为data. 耶!

但是 -即使没有发出 HTTP 请求,isLoading也会短暂地翻转。true所以当没有实际的网络活动时,我的加载指示器会显示。

我是否误解了如何最好地解决我的用例,有没有办法确保isLoading如果没有 HTTP 活动会返回 false?

0 投票
1 回答
435 浏览

reactjs - 反应 SWR 或查询在哪里保存他的数据,我在哪里可以看到它?

我知道它保存在缓存中,但我找不到它或者反应查询如何以及在哪里保存他的数据我想了解它是如何工作的以及我如何看到它保存数据的位置,因为我在 devtools 中看不到它或任何其他地方

0 投票
1 回答
62 浏览

javascript - 访问对象 ReactJS

我正试图从这个 API 中获取数据以显示出来,但我终其一生都无法找到一种让它工作的方法。我可以让 sol_keys 显示出来,仅此而已。我最初的想法是“平均温度”类似于 {sol.AT.mx} 等其他人,但不行。任何帮助深表感谢。

这是代码:

这是 API 返回的内容。 API 响应

0 投票
1 回答
6549 浏览

react-query - 如何在 axios 中使用 react-query 突变?

我正在尝试使用 axios 使用react-query 突变,但是当我的请求返回 http 错误时,我catch()没有被调用。

这是我尝试过的:

我的user.service.ts

我的 api.ts:

我的请求返回 400 错误状态,但我的 中没有打印任何内容catch(),为什么?

0 投票
1 回答
411 浏览

reactjs - 如何在函数中键入异步提取?

鉴于以下代码,我收到数据常量的不安全分配错误。

如何安全地键入数据分配的等待结果?

0 投票
2 回答
2097 浏览

reactjs - react-query:为什么这个查询总是陈旧的?

根据文档,我已经为 react-query 配置了无限陈旧时间,如下所示:

我的大多数查询都不会过时,除了一个,我的“个人资料”查询:

这是保存当前用户配置文件的查询。isAuthenticated()是一个同步调用,用于检查我们是否有用户令牌(所以我不会进行我知道会失败的 API 调用)。

出于某种原因,在 react-query devtools 窗口中,此查询立即显示为过时。我真的看不出我对这个有什么不同。有什么调试这个的建议吗?

0 投票
0 回答
913 浏览

reactjs - 反应查询,无效的钩子调用

我正在尝试制作一个轻松执行查询的功能。也许我最初做错了一切,如果你纠正我,我会很高兴。我创建了文件 Request.js:

在 index.js 中我调用了这个函数

但我有错误错误:无效的挂钩调用。钩子只能在函数组件的主体内部调用。