This almost works but its not updating the ui.... so found the index of what I want to change, I created a new array newFavorites and increased a value on one of its keys (sets +1). But I am not sure how to return the new state with the updated key value.
here is the model. i just want to add one to the sets
class Exercise {
constructor(id, name, gifUrl, equipment, sets=4){
this.id = id;
this.name = name;
this.gifUrl = gifUrl;
this.equipment = equipment;
this.sets = sets;
}
}
export default Exercise;
const initialState = {
favoritedExercises: [],
}
case ADD_SETS:
const index= state.favoritedExercises.findIndex(fav => fav.id === action.payload.id);
let newFavorites = [...state.favoritedExercises];
newFavorites[index].sets + 1;
return {
...state,
favoritedExercises: newFavorites
}
for anyone else who might have this missunderstandiing..
case ADD_SETS:
const index= state.favoritedExercises.findIndex(fav => fav.id === action.payload.id);
let newFavorites = [...state.favoritedExercises];
newFavorites[index].sets = newFavorites[index].sets + 1;
console.log(newFavorites[index])
return {
...state,
favoritedExercises: newFavorites
}