მონაცემების განახლება URL პარამეტრებით საცავში React Router-ში
წინა გაკვეთილზე ჩვენ დავამატეთ კიდევ ერთი მარშრუტი და გვერდი ფორმით მონაცემების რედაქტირებისთვის. ჩვენ გვრჩება ჩვენს ფორმაში შეყვანილი მონაცემების შენახვა.
დასაწყისისთვის დავამატოთ ფუნქცია მონაცემების განახლებისთვის
პროდუქტის updateProduct
forStorage.js-ში. ჩვენ გვჭირდება გადავცეთ
მას id პროდუქტის და შეცვლილი
მონაცემები:
export async function updateProduct(id, updates) {
await someNetwork();
}
შემდეგ საცავიდან გასაღებით 'products'
მივიღოთ პროდუქტები და ვიპოვოთ ის, რომელსაც
ჩვენ ვცვლით მისი id-ით. წარუმატებლობის შემთხვევაში
ჩავაგდოთ შეცდომა:
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);
}
შემდეგ ჩვენ გვრჩება ცვლილებების შეტანა
ნაპოვნ პროდუქტში და გადავწეროთ
განახლებული სია საცავში ჩვენი
ფუნქციის 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;
}
აიღეთ აპლიკაცია, რომელიც თქვენ შექმენით
დავალებებში წინა გაკვეთილებისთვის. გაკვეთილის მასალების გამოყენებით, დაამატეთ ფაილში
forStorage.js ფუნქცია
updateStudent სტუდენტის მონაცემების განახლებისთვის
საცავში.