将参数传递给使用Axios的React-query useQuery方法的正确方法是通过在useQuery方法的第二个参数中传递一个对象,其中的key为"variables",值为包含参数的对象。
例如,假设我们要传递一个名为"userId"的参数,可以按以下方式调用useQuery方法:
import { useQuery } from 'react-query';
import axios from 'axios';
const fetchUser = async (userId) => {
const response = await axios.get(`/api/users/${userId}`);
return response.data;
};
const UserProfile = ({ userId }) => {
const { data, isLoading, error } = useQuery(['user', { variables: { userId } }], () => fetchUser(userId));
if (isLoading) {
return <div>Loading...</div>;
}
if (error) {
return <div>Error: {error.message}</div>;
}
return (
<div>
<h1>User Profile</h1>
<p>Name: {data.name}</p>
<p>Email: {data.email}</p>
</div>
);
};
在上述示例中,我们使用了useQuery方法来获取用户数据。参数传递通过在useQuery方法的第一个参数中传递一个数组来实现。数组的第一个元素是一个字符串,用于标识查询的唯一键(在此示例中为'user'),第二个元素是一个包含参数的对象,其中的key为"variables",值为包含参数的对象(在此示例中为{ userId })。
这样,我们就成功地将参数传递给了使用Axios的React-query useQuery方法。
领取专属 10元无门槛券
手把手带您无忧上云