Quand j'échange que j'échange avec l'instate, il tourne deux fois. D'abord, l'échec des données est renvoyé, puis les données prêtes sont renvoyées. La console renvoie False Faux d'abord alors vrai. Je veux juste retourner vrai dans la console. Exemple:
https://codesandbox.io/s/kopz8wrl7o p> p>
3 Réponses :
Il est dû au cycle de vie du réact et au fait que vous définissez la propriété State.Loading initialement sur False. https://reactjs.org/docs/react-component.html P >
Tout d'abord, il y a le rendu initial, puis le composantDidMount avec son instate est appelé. Vous voudrez peut-être laisser le chargement non défini puis dans la méthode de rendu, vérifiez si c'est défini ou non avant de vérifier sa valeur. P>
Vous avez simplement inversé le booléen associé au chargement. Vous devez initialement la définir sur Exemple de travail: P> P> true code>, puis sur
false code> lorsque vos données sont chargées.
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.1.1/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.1.1/umd/react-dom.production.min.js"></script>
<div id='root'/>
Je suppose que je ne pouvais pas expliquer la question exactement. Je veux juste retourner vrai sur la console, ma valeur initiale sera fausse.
Vous voulez seulement retourner true lorsque vos données sont chargées?
Vous y allez, maintenant vos journaux de composants true code> lorsque vos données sont chargées
Je dois effectuer le processus de console sous rendu.
Bon, je n'ai aucune idée de cela est nécessaire, mais vous y allez. La condition de rendre tout ce qui a fini de chargement est simplement ! Chargement code>
Lorsque vous rechargez la page, l'échec des données apparaît, puis les données prêtes apparaissent. Lorsque vous rechargez la page, je veux juste retourner les données prêtes.
Vous auriez dû dire que plus tôt, vous y allez, c'est fixé maintenant
Vos données changent pourquoi vous avez deux messages:
p>
Vous avez besoin de la décision, qu'est-ce que tu vas faire?
Si vous ne vouliez pas l'état de changement, vous pouvez utiliser devoircomponpdate code> ou vous pouvez simplement sauter 1 message de console p>
Comment puis-je faire avec DépomponponUpdate sans utiliser de composantDidMount?
Vous pouvez garder un composantdidmount, et simplement ajouter de l'ajustement.
Qu'est-ce que vous voulez dire par vous voulez seulement retourner vrai?
Oui seulement retourne vrai.
Tu veux dire comme cela? codesandbox.io/s/rj8po7jzrq
Vous ne pouvez pas simplement retourner vrai dans la console. Parce que l'état initial est faux pour le chargement. Donc, cela montrera dans la console avant le premier rendu. Après cela, cela changera de vrai.
Vous devriez examiner la fonction de vie de la vie devrait être comprometchdate ()
@Eponyweb je ne vois aucune raison d'utiliser ceci
@Eponyweb j'ai essayé avec DépomponponUpdate, mais je ne pouvais-je pas le faire. Pouvez-vous s'il vous plaît me montrer à travers l'échantillon?