J'ai le code côté client apollo-graphql suivant dans lequel je déclenche la requête graphql toutes les 30 secondes et j'obtiens les données.Apollo Graphql: Éviter le chargement de l'indicateur pendant le rechargement
import React, { Component } from 'react';
import { gql, graphql } from 'react-apollo';
import _ from 'underscore';
class Test extends Component {
render() {
if (this.props.TestData.loading) {
return <div>Loading...</div>
}
if (this.props.TestData.error && this.props.TestData.error !== null) {
return <div>Error...</div>
}
// Iterate through the this.props.TestData.getTestData and build the Table of data here
return (
<table>
_.map(this.props.TestData.getTestData.testList, (test) => {
<tr>
<td>{test.testName}</td>
<td>{test.status}</td>
</tr>
})
</table>
);
}
}
const TestQuery = gql`
query TestQuery() {
getTestData() {
testList {
testName
status
}
}
}
`;
const options =() => ({
pollInterval: 30000,
});
const withTestData = graphql(TestQuery, {
name: 'TestData',
options,
});
export default withTestData(Test);
Le problème est que je fais face à chaque bout de 30 secondes, je vois Loading...
depuis la requête est relancée. Je veux le Loading...
à afficher seulement quand la page est lancée, par la suite il devrait être mise à jour sans heurt et je ne veux pas montrer l'indicateur Loading...
à l'utilisateur. Je ne sais pas comment y parvenir.
Génial, ça a marché. Edited votre code car il y avait une négation manquant et modifié pour pointer sur le champ correct. –