⊗jsrtPmCpEGS 89 of 112 menu

Olemu redigeerimise muutmine lapselapse komponendis Reactis

Vaatleme komponenti Product, mille saime eelmises õppetükis:

function Product({ id, name, cost, isEdit, toggleMode, editProd }) { return <div> nimi: { isEdit ? <input value={name} onChange={event => editProd(id, 'name', event)} /> : <span>{name}</span> } hind: { isEdit ? <input value={cost} onChange={event => editProd(id, 'cost', event)} /> : <span>{cost}</span> } <button onClick={() => toggleMode(id)}> {isEdit ? 'salvesta': 'redigeeri'} </button> </div>; }

On lihtne märgata, et kood toote nime jaoks ja toote hinna jaoks on peaaegu dubleeritud. Väljume selle koodi eraldi komponenti ProductField:

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

Teeme muudatused komponendis Product:

function Product({ id, name, cost, isEdit, toggleMode, editProd }) { return <div> nimi: <ProductField id={id} text={name} type="name" isEdit={isEdit} editProd={editProd} />, hind: <ProductField id={id} text={cost} type="cost" isEdit={isEdit} editProd={editProd} /> <button onClick={() => toggleMode(id)}> {isEdit ? 'salvesta': 'redigeeri'} </button> </div>; }

Tehke samasugused toimingud komponendiga User, mille lõite eelmistes õppetundides.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu