0
votes

Composant rend 4 fois dans la console.log

Tout d'abord, merci de me lire. Je travaille sur la réactâtale à l'aide d'Expo. Je configurais des fonctions dans mon application à l'aide de la composanteWillmount et de la composanteDidMount. Ça marche, d'accord mais j'ai des difficultés à comprendre pourquoi mon composant rend 4 fois ...

Je reçois ce résultat (avec ma console.log):

Résultats RécucevicesVicanuufacturer (): 42 ===> RécuplesProfileRuserid 42 résultats de récupération (): ... Résultats RÉSULTÉSVICEVEVERSION (): 10 résultats réarévicanutilisateur (): type de connexion Google WiFi est lié? vrai

mais 4 fois dans une rangée chaque fois que j'exécute le composant. Je suis bien sûr nouveau pour réagir et avoir besoin d'aide pour bien comprendre cela.

Merci beaucoup si vous pouvez aider. Voici ma pleine page de code: xxx


0 commentaires

3 Réponses :


0
votes

de ce que je peux voir à partir de votre code, dans le composant ComponentWillMount Vous appelez SETState 4 fois. De manière générale, chaque fois qu'il y a un changement d'état à l'aide de SetState , réagira à réagir le composant. Vous l'appelez 4 fois - vous obtenez 4 retours (c'est une possibilité).

Pour plus d'informations, reportez-vous ici

Je ne m'inquiéterais pas à ce sujet avant de commencer à remarquer des problèmes avec la performance de votre application, auquel cas je penserais à l'optimisation. Mais pas au préalable.

De plus, Composantwillmount a été obsolète et vous ne devriez pas l'utiliser dans vos composants. Veuillez vous reporter ici .

J'espère que cela vous aidera!


0 commentaires

1
votes

Voir la raison pour laquelle votre console.log imprime 4 fois à l'intérieur du rendu Fnuccance est dû au fait que vous avez ajouté 4 fonctions de ststate à l'intérieur du composantWillmount,

componentWillMount = async () => {
        this.setState({ deviceOSVersion: await retrieveDeviceOSVersion(),deviceManufacturer: await retrieveDeviceManufacturer() ,
deviceUID: await retrieveDeviceUID(),profileUserId: await retrieveProfileUserId()});

      };


0 commentaires

0
votes

réagit réagir à nouveau tous les composants et les sous-composants à chaque instant est appelé?

La réponse par défaut est oui.


0 commentaires