【发布时间】:2021-08-06 18:32:27
【问题描述】:
我有一个问题,useQuery 总是在我的应用程序中运行,我不知道为什么
在我的组件中
import { GET_DATA } from 'apiCalls';
const { loading, error, data } = useQuery('getData', GET_DATA(token));
在我的 api 调用中
export const GET_DATA = async (token) => {
try {
const res = await axios.get(`${process.env.REACT_APP_SERVER}/api/...`, {
headers: {'auth-token': token},
});
console.log(res);
return res.data;
} catch (err) {
console.log('Error getting data');
return err;
}
}
当我调试我的应用程序时。 GET_DATA 函数始终在运行。这里有什么问题?
【问题讨论】:
-
我认为在您的应用程序中的某些时候您正在使用 useEffect 并且在 useEffect 内部您正在做一些使组件重新呈现的事情。如果您提供有关您在其中使用 GET_DATA 的组件的更多信息,我可以告诉您问题出在哪里。
-
我的组件中甚至没有 useEffect @Ako
-
我检查了我的组件,问题是 useQuery 100%,因为当我评论它时,组件停止总是重新渲染@Ako
-
你不能调用useQuery里面的函数。我写答案如何使用它。
标签: javascript reactjs react-query