开发者问题收集

RTK查询会将所有数据存储吗?如果是,为什么还需要将数据放入切片中?

2022-04-21
1540

我的问题将基于此示例: https://codesandbox.io/s/github/reduxjs/redux-toolkit/tree/master/examples/query/react/authentication-with-extrareducers?from-embed=&file=/src/app/services/auth.ts

不知道如何使用 useSelector 访问从 RTK 查询获取的数据,我想知道如果 RTK 查询放入,为什么需要创建 authSlice 并将令牌存储到 AuthState 中将所有数据放入 store/state 中?

提前谢谢您

1个回答

因为 RTK Query 不仅将数据放入存储中 - 它还会从那里移除数据。

您的应用不再使用的查询缓存条目将在 60 秒后被移除。 一旦变异组件卸载或触发另一个变异,变异结果将被移除(因为此时不再有办法获取该数据)。

因此,如果您希望某些东西“始终存在”,您必须控制该数据并将其放在您可以再次找到它的地方,并可以自行决定是否将其移除。

phry
2022-04-21