queryClient.refetchQueries() 与 const {refetch} = useQuery() 有什么不同

장민우*_*장민우 2 reactjs react-query

queryClient.refetchQueries()对比有什么不同const {refetch} = useQuery()

我不去想这有什么不同;

当我使用时queryClient.refetchQueries(),它可以工作一次,但我使用时const {refetch} = useQuery(),它可以工作两次

我做错了什么?

我想用const {refetch} = useQuery()

TkD*_*odo 5

差异是:

  • queryClient.refetchQueries可以同时定位多个查询
  • queryClient.refetchQueries可以用在您没有通过 订阅useQuery,但只能访问 的地方queryClient,例如在onSuccess突变的回调中。
  • refetch返回的useQuery disabled重新获取(通过)的查询enabled: false。所有其他重新获取的方法都排除禁用的查询。

当我使用 queryClient.refetchQueries() 时,它会工作一次,但我使用 const {refetch} = useQuery() 时,它会工作两次

不知道这意味着什么,抱歉。