Actualmente estoy tratando de agregar favoritos a una lista de ejercicios con el siguiente código
const addFavouriteExercise = (exercise) => { const newFavouritesList = [...favourites, exercise]; setFavourites(newFavouritesList); saveToLocalStorage(newFavouritesList); };Funciona localmente, pero cuando lo implemento en netlify, aparece el error Uncaught TypeError: e es nulo y no lo agregará al almacenamiento local.
¿Algunas ideas?
saveToLocalStorage
const saveToLocalStorage = (items) => { localStorage.setItem("favourites", JSON.stringify(items)); };El error terminó en un useEffect que tenía, donde intentaba cargar elementos de localStorage pero configuraba los favoritos en un objeto vacío.
Errores corregidos, uf
El nuevo useEffect se ve así:
useEffect(() => { const exerciseFavourites = JSON.parse(localStorage.getItem("favourites")); try { let length = exerciseFavourites.length; if (length > 0) { setFavourites(exerciseFavourites); } } catch (e) { console.error(e); }}, []);
Debes encontrar dónde está la E. E intente usar saveLocalStorage primero y luego setState para evitar volver a procesar antes de configurarlo en localstorege