RTK查询是否应该只用于获取不需要缓存的数据?

Tsa*_*ary 0 reactjs redux react-redux redux-toolkit rtk-query

在很长一段时间没有接触 React 之后,我现在重新开始使用 React,我正在查看我之前使用过的 redux 工具包,我看到了 RTK 查询。

我试图理解它,并且认为我已经理解了,但是有一件事我不确定是我遗漏了还是它只是被设计成这样工作的。

我们是否只使用 RTKQ 来获取根本不需要缓存的数据?例如加载用户点击的特定帖子?我这么问是因为在我看过或读过的任何教程中我都没有看到与其他切片的任何交互。

例如,如果我需要获取一些需要保留的信息(否则我只会继续获取它),那么我将使用常规createAsyncThunk?

mar*_*son 6

情况完全相反。

RTK 查询用于缓存获取的数据

从服务器获取数据并将其放入 Redux 存储中一直很常见,但这需要大量工作。您必须编写发出请求的 thunk,根据结果分派操作,并编写管理加载状态和保存缓存数据的化简器。然后,您必须编写useEffect钩子来从组件中分派这些 thunk,以及从存储中读取数据的选择器。

RTK 查询会自动为您 完成所有这些工作。然后,它会在这些基础知识上进行改进,方法是在参数更改时获取新数据、在向服务器发送更新时自动重新获取查询数据、管理缓存生命周期并在组件不再需要旧数据时删除旧数据、流式更新等等。

我建议您阅读我们文档中官方“Redux Essentials”教程的相关部分,以及 RTKQ 使用指南: