Usuwanie danych z magazynu w React Router
Nasza aplikacja może dodawać nowe produkty, edytować dane, pozostało tylko dodać usuwanie danych. W tym celu przejdziemy ponownie znane nam z poprzednich lekcji kroki.
Na początek otwórzmy plik forStorage.js
i dodajmy ostatnią funkcję do usuwania
określonego produktu deleteProduct
po jego id:
export async function deleteProduct(id) {}
Następnie pobierzemy listę produktów z magazynu
i znajdziemy indeks produktu, który chcemy usunąć,
jeśli taki produkt istnieje, to usuniemy go z
listy za pomocą splice.
Następnie wywołamy setProducts i
zalejemy nową listę produktów
do magazynu:
export async function deleteProduct(id) {
let products = await localforage.getItem('products');
let index = products.findIndex((product) => product.id === id);
if (index > -1) {
products.splice(index, 1);
await setProducts(products);
return true;
}
return false;
}
Weź aplikację stworzoną przez Ciebie w
zadaniach do poprzednich lekcji. Korzystając z
materiałów lekcji, napisz funkcję
deleteStudent do usuwania danych
studenta z magazynu po id.