问题标签 [rtk]

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 回答
169 浏览

reactjs - Redux 工具包运行多个查询,即使阻止它

我在一个组件中使用带有多个钩子的 redux 工具包 RTK,但问题是它们一起运行,即使我使用的是skip在这种情况下我不想要的参数,这是我的代码:

在网络选项卡中,我可以看到两个请求同时运行,我可以阻止例如。useGetTestsByStatusQuery在有一些数据的情况下获取,useGetTestsQuery反之亦然?

0 投票
1 回答
16 浏览

rtk-query - 在手动读取缓存之前如何保证请求已经发送?

像这个例子:constructing-a-dynamic-base-url-using-redux-state,我需要从缓存中获取某个端点的数据来构建fetch arg,我可以通过 获取数据api.endpoints.getPost.select(postId)(getState()),但是我如何确保getPost 请求已发送?

0 投票
0 回答
42 浏览

reactjs - 将 useQuery 作为参数传递给另一个 Hook 是否正确?

我是 RTK 新手,非常喜欢这个库,但是我有点迷茫,因为它和我传统的开发方式有点不同。

在很多情况下,表、分页和查询的逻辑是重复的。我们可能希望将这些重复的逻辑封装到自定义的 hooks 中快速编写 UI 逻辑,就像useAntdTable一样ahooks,传入一个查询函数,这个查询函数返回约定格式数据的 promise,然后自动tableProps为 Antd生成表格组件:

但这不适用于 RTK 查询,因为useQuery钩子不返回承诺。所以我需要自己封装useMyAntdTable但是,是否建议useQuery 作为参数传递给另一个钩子?或者传递trigger函数useLazyQuery?我注意到RTKQ没有导出UseQuery类型,所以我很困惑,是否可以这样写?

或者,我做错了什么,useQuery 可能提供了这样的方法,但是我没有找到?

有没有推荐的方法来封装这种重复的业务逻辑?我应该如何思考和处理(arg) => Promise<Data>和 trigger之间的区别(arg) => void

非常感谢您的回复!

0 投票
1 回答
93 浏览

node.js - TypeError:对象不是函数或其返回值不可迭代..在redux rtk中尝试使用变异函数

这是我的 API 设置

这是我打电话时遇到的错误usePostBugMutation()

就像我解构addNewPost()我没有使用它一样,我收到了这个错误

0 投票
1 回答
176 浏览

reactjs - 如何使用 RTK Query 获取 X-Total-Count 标头?

不知道如何在请求后访问标头。不使用的文档示例x-total-count

我让它们像这样进入组件

我在哪里可以访问响应标头?

0 投票
0 回答
209 浏览

reactjs - 如何在 RTK 查询中将数据保存到 localStorage?

我想创建一个购物车,其中包含用户添加的产品列表并将其保存在 localStorage 中。如果我们有此 RTK 查询代码,是否可以在 createApi() 中定义该购物车?如果没有,我怎样才能在另一个切片中使用它?

如果无法直接将购物车操作添加到 createApi,我如何提取 SingleProduct 并在此切片中使用它?

0 投票
1 回答
46 浏览

reactjs - Redux Tookit,如何在非组件函数中调度动作?

我有一个全局吐司,我正在使用 redux slice 打开它。当来自 api 的调用在 rtk-query 的 api-slice 中失败时,我需要打开 toast 以获取错误消息。我已经看到了答案,使用store.dispatch方法,但这会导致依赖循环。有没有办法做到这一点?

0 投票
0 回答
14 浏览

javascript - 我怎样才能比较 useParams() prev 和 current value

我面临一个问题,我正在根据 params?.id 获取不同的 api。我需要使用 rtkQuery 比较 api 调用的 prev 和 current useParams。但它并没有回忆起我关于 useparams 更改的 api。

我想使用类似跳过的东西:如果 prev.params.id !== prams.id。有两种方法可以做到这一点。=>通过设置一个状态来存储useParams的prev值。=>通过使用 rtk 查询提供的 refecthh。

有没有其他正宗的方法来做到这一点。

任何帮助,将不胜感激。