-1
votes

Réagit à réagir à deux reprises

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. XXX

Exemple: https://codesandbox.io/s/kopz8wrl7o


7 commentaires

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?


3 Réponses :


0
votes

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

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.


0 commentaires

0
votes

Vous avez simplement inversé le booléen associé au chargement. Vous devez initialement la définir sur true code>, puis sur false code> lorsque vos données sont chargées.

Exemple de travail: P>

P>

<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'/>


7 commentaires

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 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


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



0
votes

Vos données changent pourquoi vous avez deux messages: Entrez la description de l'image ici

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 ou vous pouvez simplement sauter 1 message de console


2 commentaires

Comment puis-je faire avec DépomponponUpdate sans utiliser de composantDidMount?


Vous pouvez garder un composantdidmount, et simplement ajouter de l'ajustement.