⊗jsrtPmCpEGS 89 of 112 menu

Redigering av state i barnbarnskomponent i React

Låt oss betrakta komponenten Product, som vi fick i föregående lektion:

function Product({ id, name, cost, isEdit, toggleMode, editProd }) { return <div> namn: { isEdit ? <input value={name} onChange={event => editProd(id, 'name', event)} /> : <span>{name}</span> } pris: { isEdit ? <input value={cost} onChange={event => editProd(id, 'cost', event)} /> : <span>{cost}</span> } <button onClick={() => toggleMode(id)}> {isEdit ? 'spara': 'redigera'} </button> </div>; }

Det är lätt att se att koden för produktens namn och för produktens pris nästan är duplicerad. Låt oss extrahera denna kod till en separat komponent ProductField:

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

Låt oss göra ändringar i komponenten Product:

function Product({ id, name, cost, isEdit, toggleMode, editProd }) { return <div> namn: <ProductField id={id} text={name} type="name" isEdit={isEdit} editProd={editProd} />, pris: <ProductField id={id} text={cost} type="cost" isEdit={isEdit} editProd={editProd} /> <button onClick={() => toggleMode(id)}> {isEdit ? 'spara': 'redigera'} </button> </div>; }

Utför liknande operationer med komponenten User, som du skapade i tidigare lektioner.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa