如何根据不同的状态使用 useQuery 重新发送查询?

How to resend a query with useQuery based on different state?

所以我的例子:

const Component = () => {
  const [param, setParam] = useState('defaul')
  const { isLoading, isError, data } = useQuery('data', () => fetch(`https://test.com?param=${param}`)

  ....
}

例如,我将在某个地方更改参数状态,并且我想使用这个更新后的参数获取日期。每次参数状态发生变化时,我都想重新发送 API 调用。我怎样才能做到这一点?

P.S。我正在使用 React Query lib

useQuery 声明的 queryKey 中包含您的参数应该会在参数更改时自动重新获取数据。请参阅下面的修改示例:

const Component = () => {
  const [param, setParam] = useState('defaul')
  const { isLoading, isError, data } = useQuery(['data', param], () => fetch(`https://test.com?param=${param}`)

  ....
}

有关详细信息,请参阅 here