@JordanBelford

Почему redux store забивается дублями?

Добрый день! Стаяла передо мной задача реализовать пагинацию, для этого было пройдены следующие шаги:
Первым шагом создал новою функцию в reducer:
case SET_CURRENT_PAGE: {
    return {
        ...state,
        currentPage: action.payload
    }
}

Вторым шагом был создан сетевой запрос:
useEffect(() => {
        axios.get(`/post/${props.numbersPage.currentPage}`)
            .then(res => {
                res.data.forEach(item => {
                    props.addPost(item.id);
            });
    }, [props.numbersPage.currentPage]);

Для того чтобы useEffect срабатывал после изменения текущей страницы, в зависимости указал currentPage.
Последним шагом добавил отрисовку страниц:
<div className="page">
    {pages.map((page, index) => <span 
        onClick={() => dispatch(setCurrentPageAC(page))} 
        key={index}>{page}
    </span>)}
</div>

Все отлично работает, если только не одно но, почему у меня при нажатие на span старое состояние redux store не перезаписывается новым, старые записи остаются, а в конец дописывается новый ответ от сервера. С данной проблемой не первый раз сталкиваюсь, могу предположить возможно неправильно совершаю копирование в reducer'e. Кто знает как решить эту проблему?
  • Вопрос задан
  • 66 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы