const getSurvey = useQuery(["survey"], () =>
getSurveyData({
page: 1,
userLangCode: langCode,
sortColumnName: "Date",
sortColumnOrder: "DESC",
country,
ip,
})
);
我试图在某个事件发生后运行查询,但组件加载后它就被调用,并给予我不希望的结果,虽然过了一段时间,当组件得到更新,它只是工作正常。因为我不能被绑定在一个函数。我需要一个方法,我可以从组件外部使用它vut的问题是我不能从外部使用useQuery。
2条答案
按热度按时间doinxwow1#
您可以使用
refetch
命令告诉查询开始时禁用,然后手动获取数据:您可以将prop或state变量的值设置为enabled,以便在条件为真时自动运行查询
参见:https://tanstack.com/query/v4/docs/guides/dependent-queries
p8h8hvxi2#
答案是来自coagmano的-只要确保你最终打电话
getSurvey.refetch();
而不是getSurvey.refresh();