J'ai 3 zones de texte. J'ai un menu déroulant. Lorsque l'application démarre/la page se charge, les zones de texte sont vides et la liste déroulante est remplie de produits divers.Comment gérer React setState() lorsqu'il s'agit de champs de saisie?
Lorsque je sélectionne un élément dans la liste déroulante, je charge l'objet dans les champs de texte pour l'éditer. Lorsque vous utilisez des propriétés (this.props), les données sont correctement chargées dans les zones de texte, mais je ne peux pas apporter de modifications au texte, car cela doit être fait à l'aide de l'état à la place. Mais si j'utilise state (this.state), le composant ne reste jamais synchronisé. Si je sélectionne l'élément 1 dans la liste déroulante, il est chargé dans l'état mais ne s'affiche pas sur l'écran tant que je n'ai pas choisi un autre élément dans la liste déroulante. Par conséquent, lorsque je sélectionne l'article 2, il charge l'article 1 dans les zones de texte.
Citation des documents React.
« setState() n'a pas muter immédiatement this.state mais crée une transition d'état en attente »
Comment diable voulez-vous les gars faire face à cela? J'ai l'impression d'avoir tout essayé.
Cela m'a beaucoup aidé. J'essaie de comprendre où sont les choses dans mes composants. Parfois, cela peut être très déroutant, mais vous m'avez aidé à comprendre cela. Je vous remercie! – g5insider
Pas de problème, heureux que cela ait aidé ^^ –