Как правильно в Redux-Toolkit предотвратить добавления элементов с одинаковым id
Начал изучать Redux-Toolkit, реализую логику добавления в избранное, и не могу понять как сделать проверку по id уже находящегося элемента. Если findItem есть, как его не добавлять в существующий массив. Заранее спасибо.
import { createSlice } from '@reduxjs/toolkit';
const initialState = {
favoritesItems: [],
//массив элементов на странице Избранного
};
export const favoritesSlice = createSlice({
name: 'favorite',
initialState,
reducers: {
addToFavorite(state, action) {
проблема возникает здесь, если я в payload пишу payload.id он добавляет только один элемент, а
второй выдаёт с ошибкой, не может найти id. И как сделать проверку если нашёлся findItem
const findItem = state.favoritesItems.find((obj) => obj.id === state.payload.id);
if (findItem) {
findItem.filter((obj) => obj.id === action.payload.id);
} else {
state.favoritesItems.push({
...action.payload,
});
}
},
}
export const { addToFavorite} = favoritesSlice.actions;
export default favoritesSlice.reducer;