Dans la documentation d'Apollo React, http://dev.apollodata.com/react/queries.html#basics, il existe des exemples d'extraction automatique lorsque le composant est affiché, mais j'aimerais lancer une requête lorsqu'un bouton est cliqué. Je vois un exemple permettant de "récupérer" une requête lorsqu'un bouton est cliqué, mais je ne souhaite pas qu'il interroge initialement. Je vois qu'il existe un moyen d'appeler des mutations, mais comment appelez-vous des requêtes?
Réponse
Trop de publicités?Vous pouvez le faire en passant une référence à Apollon Client à l'aide de l' withApollo
d'ordre supérieur-composant, comme indiqué ici: https://www.apollographql.com/docs/react/api/react-apollo.html#withApollo
Ensuite, vous pouvez appeler client.query
sur le passé dans l'objet, comme suit:
class MyComponent extends React.Component {
runQuery() {
this.props.client.query({
query: gql`...`,
variables: { ... },
});
}
render() { ... }
}
withApollo(MyComponent);
Par curiosité, quel est le but de l'exécution d'une requête sur un événement de clic? Il y a peut être un meilleur moyen d'atteindre l'objectif sous-jacent.