ReactQueryCacheProvider 与 ReactQueryConfigProvider

ReactQueryCacheProvider vs ReactQueryConfigProvider

react-query中的ReactQueryCacheProviderReactQueryConfigProvider有什么区别?我认为 CacheProvider 是必须的,因为它是提供程序,以便为应用程序使用反应查询的上下文。 ConfigProvider 似乎是一个选项,以便为 useQuery 提供默认配置,问题是配置可以传递给 CacheProvider。

谁能解释一下为什么除了CacheProvider还要用ConfigProvider,什么时候用?

关于 ReactQueryCacheProvider 你是对的 - 反应查询需要通过反应上下文将 queryCache 传递给你,这样你就可以做 useQueryCache。在 ReactQueryCacheProvider 上,您还可以为所有查询定义默认选项。

ReactQueryConfigProvider 是可选的提供程序组件,可用于为其子树中的所有 useQuery 实例定义默认值。因此,您只能覆盖应用程序部分的默认值。

请注意,这都是针对 v2 的。最近发布的react-query v3,只有QueryClientProvider而不是ReactQueryCacheProvider,而ReactQueryConfigProvider根本不存在了。您可以在此处的迁移到 v3 指南中阅读相关内容:https://react-query.tanstack.com/guides/migrating-to-react-query-3#reactqueryconfigprovider-and-reactquerycacheprovider-have-both-been-replaced-by-queryclientprovider