Cette question est juste dans le but d'améliorer mes codes dans la réaction qui semble actuellement très sale et illisible. J'ai 10-15 formulaires champs qui ont mis à jour une fois que j'ai obtenu des valeurs d'API.
Voici le code à partir de laquelle je l'ai fait, P>
this.setState({smtpServer:res.data.data[0].smtpServer}); this.setState({senderName:res.data.data[0].senderName}); this.setState({senderEmail:res.data.data[0].senderEmail}); this.setState({smtpPorts:res.data.data[0].smtpPort}); this.setState({username:res.data.data[0].username}); this.setState({password:res.data.data[0].password}); this.setState({authType:res.data.data[0].authType});
5 Réponses :
En supposant que ces appels se produisent en séquence, il pourrait être écrit comme
Vous pouvez déstructurer les données et utiliser un seul ou, si < a href = "https://codesandbox.io/s/brafre-darkness-svoyb?expanddevtools=1&fonttsize=14&hidenavigation=1&module=%2fsrc%2fapp.js&theme=dark" rel = "Nofollow Noreferrer"> P> P> SetState code> avec une affectation d'objet sténo-shorth ( IE Les touches sont nommées les mêmes que les variables em>)
res.data.data [0] code> a toutes les propriétés que vous souhaitez stocker dans l'état, plus succinctement p>
Vous pouvez les raccourcir en l'adaptant à un seul état d'objet à l'aide de SSTATE. Essayez d'abord de déstructurer votre suivant Vous pouvez définir l'état dans un objet géant avec chaque attributs. ES6 permet à JavaScript d'utiliser la clé uniquement au lieu des paires de la valeur de clé lorsque la clé et la valeur ont le même nom.
Ainsi: espère que cela aide cela aide. P> p> res.data.data [0] code> objet afin de gérer les attributs individuels mieux:
const objname = {nom d'utilisateur: nom d'utilisateur, mot de passe: mot de passe} code> peut également être saisi comme
const objname = {nom d'utilisateur, mot de passe} code>
Par cette logique, vous ne pouvez que définir comme suit: p>
ou s'il n'y a rien d'autre dans cet objet, vous pouvez simplement faire simplement
this.setState({ data: res.data.data[0] });
Il peut être atteint de manière très simple comme ci-dessous: P>
Vous pouvez prendre ces données dans une variable, puis vous pouvez l'affecter dans l'état. P>
Vous pouvez l'affecter directement sans utiliser une variable supplémentaire. P>
const données = res.data.data [0]; code> p>
this.setstate ({... Data}); code> p> li>
this.setstate ({... res.data.data [0]}); code> p> li>
ol>
Merci de me garder posté. Je demanderai que c'est le canal respectif.