⊗jsrtPmCpEGS 89 of 112 menu

Edición del estado en un componente nieto en React

Consideremos el componente Product, obtenido por nosotros en la lección anterior:

function Product({ id, name, cost, isEdit, toggleMode, editProd }) { return <div> nombre: { isEdit ? <input value={name} onChange={event => editProd(id, 'name', event)} /> : <span>{name}</span> } precio: { isEdit ? <input value={cost} onChange={event => editProd(id, 'cost', event)} /> : <span>{cost}</span> } <button onClick={() => toggleMode(id)}> {isEdit ? 'guardar': 'editar'} </button> </div>; }

Es fácil notar que el código para el nombre del producto y para el precio del producto está prácticamente duplicado. Extraigamos este código en un componente separado ProductField:

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

Hagamos cambios en el componente Product:

function Product({ id, name, cost, isEdit, toggleMode, editProd }) { return <div> nombre: <ProductField id={id} text={name} type="name" isEdit={isEdit} editProd={editProd} />, precio: <ProductField id={id} text={cost} type="cost" isEdit={isEdit} editProd={editProd} /> <button onClick={() => toggleMode(id)}> {isEdit ? 'guardar': 'editar'} </button> </div>; }

Realice operaciones similares con el componente User, creado por usted en lecciones anteriores.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar