J'ai un problème que je ne peux pas comprendre. J'ai un élément de composant à l'intérieur, j'utilise un plugin de table de réact.
sur Voici mon ComposantDidDmount Strong> sur laquelle j'appelle Redux Strux> Action. P> ComposantDidDmount Code> Je dois appeler Redux Action qui obtiennent des données d'API, puis je transmetce ces données à la table de réaction. P>
if (this.props.getDataReducer.items != null) {
return (<div>
<p>Loading...</p>
</div>);
} else {
return(
<ReactTable className="-striped -highlight"
data={this.props.getDataReducer.items}
columns={columns}
/>
)
}
3 Réponses :
Vous pouvez rendre la condition plus simple à manipuler pour indéfini et null: Une plus bonne pratique pour la clarté du code, il est préférable d'avoir des fonctions personnalisées gérer ces conditions, de sorte que Render () em> n'a qu'un retour em>. p> p>
ce que vous voulez est p> pour le mettre en mots, dans le premier cas doit être p> getdatareducer code> renvoie un Array avec
{éléments: null} code> dans la première position,
Donc, pour obtenir éléments code> vous devez
getdatareducer [0] .items code>.
Mais si vous le modifiez à un objet, vous pouvez simplement, getdatareducer.items code>. P>
ischarger la variable code> dans votre état,
que vous devez définir sur true code> dans le
fetch_data_start code> et à
false code> dans le succès
succès code> et
échec Code> cas.
Vérification si les éléments code> code> sont code> null code> ne signifie pas nécessairement qu'ils sont en cours de chargement, car votre application et votre code augmentent, il est préférable d'être plus précis sur ce que vous voulez dire. li>
ol> ol>
Je pense que le problème que vous rencontrez est de définir votre état pour vérifier spécifiquement une valeur null. Vous devriez vérifier si les articles sont simplement une valeur «forte» forte>. Étant donné que la propriété de données de React-Table accepte une matrice, vous devez également vérifier que les articles ont une longueur aussi.
1) Mettez à jour la condition dans votre composant P>
let initialState = { items: null }
Essayez
si (ceci.props.getdatareducer.items) {// réagit table} else {// Chargement} Code>