想象一下这样的组件层次结构:
<Team>
<Leaderboard />
<PlayerStats />
</Team>
在排行榜的呈现方法中,我们有一个Apollo / GraphQL Query组件来获取顶级玩家。
我们还有一个 component,它会在获取新的PlayerStat时触发(当前在PlayerStats中-但很高兴将其放置在任何地方)。
在PlayerStat订阅组件触发后,如何将页首横幅查询移至refetchQueries /清除缓存。
谢谢!
答案 0 :(得分:1)
因此,Apollo Query组件提供了带有React上下文的refetch
函数,就像data
,loading
和error
一样。
<Query query={...} >
{
({ data, loading, error, refetch}) => {
if (!this.state.refetch) {
this.setState({ refetch });
}
return <RenderData data={data} />;
}
}
</Query>
您可以将此refetch
函数设置为状态,并在组件收到事件时调用它。