⊗jsrtPmRtUD 39 of 47 menu

Actualización de datos mediante parámetros URL en el almacenamiento en React Router

En la lección anterior, añadimos otra ruta y una página con un formulario para editar datos. Nos queda por guardar los datos introducidos en nuestro formulario.

Para empezar, añadamos una función para actualizar los datos del producto updateProduct en forStorage.js. Necesitamos pasarle el id del producto y los datos modificados:

export async function updateProduct(id, updates) { await someNetwork(); }

A continuación, obtendremos los productos del almacenamiento bajo la clave 'products' y encontraremos el que estamos modificando por su id. En caso de fallo, lanzaremos un error:

export async function updateProduct(id, updates) { await someNetwork(); let products = await localforage.getItem('products'); let product = products.find((product) => product.id === id); if (!product) throw new Error('No product found for this', id); }

Luego, nos quedará aplicar los cambios al producto encontrado y sobrescribir la lista actualizada en el almacenamiento usando nuestra función setProducts:

export async function updateProduct(id, updates) { await someNetwork(); let products = await localforage.getItem('products'); let product = products.find((product) => product.id === id); if (!product) throw new Error('No product found for this', id); Object.assign(product, updates); await setProducts(products); return product; }

Tome la aplicación que creó en las tareas de las lecciones anteriores. Usando los materiales de la lección, añada al archivo forStorage.js la función updateStudent para actualizar los datos del estudiante en el almacenamiento.

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