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:

forStorage.jsexport 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:

forStorage.jsexport 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;
}
Задание 1

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.