【发布时间】:2021-12-01 13:43:56
【问题描述】:
我正在使用reactQuery 的一个小演示应用程序,您可以在this 回购中看到。应用调用this mock API。
我遇到了一个问题,我正在使用 useQuery 钩子在产品 API file 中调用此函数:
export const getAllProducts = async (): Promise<Product[]> => {
const productEndPoint = 'http://localhost:5000/api/product';
const { data } = await axios.get(productEndPoint);
return data as Array<Product>;
};
在我的ProductTable 组件中,然后我使用以下方法调用此函数:
const { data } = useQuery('products', getAllProducts);
我发现确实调用了 API,并返回了数据。但是网格中的表格总是空的。
如果我进行调试,我会看到 useQuery 返回的数据对象是未定义的。
网络请求确实成功完成,我可以在浏览器的请求下的网络选项卡中看到正在返回的数据。
我怀疑它可能是 getAllProducts 的结构方式或异步等待问题,但无法完全弄清楚。
谁能建议 IO 哪里出了问题?
【问题讨论】:
-
对不起,我看错了代码。你能用
axios-mock-adapter准备一个codeandbox吗? -
是的,谢谢,我会尝试在一周内设置一些东西,并在完成后通知您。谢谢。
标签: reactjs typescript axios react-query