在Apollo React文档http://dev.apollodata.com/react/queries.html#basics中,有显示组件时自动获取的示例,但是我想在单击按钮时运行查询。我看到一个在单击按钮时“重新”获取查询的示例,但我不希望它最初进行查询。我看到有一种方法可以调用变异,但是如何调用查询呢?
您可以通过使用withApollo高阶组件传递对Apollo客户端的引用来实现此目的,如此处所述:https : //www.apollographql.com/docs/react/api/react- apollo.html#withApollo
withApollo
然后,您可以client.query像这样调用传入的对象:
client.query
class MyComponent extends React.Component { runQuery() { this.props.client.query({ query: gql`...`, variables: { ... }, }); } render() { ... } } withApollo(MyComponent);
出于好奇,对单击事件运行查询的目的是什么?也许有更好的方法可以实现基本目标。