⊗jsrtPmCpEGS 89 of 112 menu

Édition de l'état dans un composant petit-fils dans React

Considérons le composant Product, obtenu dans la leçon précédente :

function Product({ id, name, cost, isEdit, toggleMode, editProd }) { return <div> nom : { isEdit ? <input value={name} onChange={event => editProd(id, 'name', event)} /> : <span>{name}</span> } prix : { isEdit ? <input value={cost} onChange={event => editProd(id, 'cost', event)} /> : <span>{cost}</span> } <button onClick={() => toggleMode(id)}> {isEdit ? 'save': 'edit'} </button> </div>; }

Il est facile de remarquer que le code pour le nom du produit et pour le prix du produit est presque dupliqué. Sortons ce code dans un composant séparé ProductField :

function ProductField({ id, text, type, isEdit, editProd }) { return isEdit ? <input value={text} onChange={event => editProd(id, type, event)} /> : <span>{text}</span> ; }

Apportons des modifications au composant Product :

function Product({ id, name, cost, isEdit, toggleMode, editProd }) { return <div> nom : <ProductField id={id} text={name} type="name" isEdit={isEdit} editProd={editProd} />, prix : <ProductField id={id} text={cost} type="cost" isEdit={isEdit} editProd={editProd} /> <button onClick={() => toggleMode(id)}> {isEdit ? 'save': 'edit'} </button> </div>; }

Effectuez des opérations similaires avec le composant User, créé par vous dans les leçons précédentes.

Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser