Andmete uuendamine URL-i parameetrite põhjal salvestusruumis React Routeris
Eelmises õppetükis lisasime veel ühe marsruudi ja lehe vormiga andmete muutmiseks. Meil jääb üle salvestada meie vormis sisestatud andmed.
Alustuseks lisame funktsiooni toote andmete uuendamiseks
updateProduct faili
forStorage.js. Peame sellele
edastama toote id ja muudetud
andmed:
export async function updateProduct(id, updates) {
await someNetwork();
}
Seejärel saame salvestusruumist võtme 'products'
abil tooted ja leiame selle, mida
me muudame, selle id järgi. Ebaõnnestumise korral
viskame vea:
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);
}
Seejärel jääb meil muudatuste tegemine
leitud tootesse ja uuendatud
nimekirja ülekirjutamine salvestusruumi meie funktsiooni
setProducts abil:
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;
}
Võtke rakendus, mille lõite
ülesannetes eelmistele õppetundidele. Kasutades
õppetunni materjale, lisage faili
forStorage.js funktsioon
updateStudent õpilase andmete uuendamiseks
salvestusruumis.