RTK 查询与中间件

问题描述 投票:0回答:1
RTK Query 是中间件吗? RTK Query 和 redux 工具包中的中间件有什么区别。 根据 redux 工具包文档,可以看出 RTK 查询用于处理数据获取等副作用。如果是这样,那么为什么需要像 redux-thunk 或 saga 这样的中间件?

redux redux-toolkit rtk-query
1个回答
0
投票
RTK Query 是中间件吗?

不,Redux-Toolkit 的查询模块是基于 RTK 切片构建的抽象,例如它是一个 API 切片,可生成操作和化简器、要添加到存储中的中间件,如果您选择加入,React 挂钩将易于使用。它维护的状态是端点元数据的状态,即进行的查询/变更及其缓存的结果。

RTK Query 和 redux 工具包中的中间件有什么区别

上面简单解释了这一点。

中间件是“调度操作与到达减速器之间的扩展点”,并且是组成 RTK 查询模块的更大功能集的一个组成部分。简单来说,中间件是 Redux 如何在调度操作和减速器功能之外“发出副作用”的方式。

根据 redux 工具包文档,可以看到 RTK 查询用于处理数据获取等副作用。如果是这样,那么为什么需要像 redux-thunk 或 saga 这样的中间件?

如果使用 Redux-Toolkit 和 RTK-Query,你真的不需要它们。 RTK 附带了 Thunk 中间件并默认启用,因此已经不需要集成 Redux-Thunk,并且 Saga 至少在几年内(也许更长时间)都不是在 React 项目中发出副作用的推荐方法。

与 RTK 如何消除大量样板 Redux 代码以及 RTK 的

createAsyncAction

 生成 
pending
fulfilled
rejected
 操作类似,RTKQ 在此基础上构建查询/突变加载/数据/错误状态并维护缓存获取的结果。这是管理客户端数据获取和缓存的超级抽象/优化。

© www.soinside.com 2019 - 2024. All rights reserved.