@Mysianio
вайти в айти

Не обновляется компонент после props, почему?

Здравствуйте, есть код, который принимает некие товары в пропсе.
Когда нажимаешь на кнопку 'добавить товар' то он добавляет его в корзину в redux.
При добавлении все работает отлично, однако неполадка с удалением из корзины.
Удаленные элементы пропадут из интерфейса только тогда, когда будет добавлен новый товар

С самим редаксом все вроде бы хорошо, он удаляет и добавляет элементы правильно, возвращает не мутировавший, а новый объект:

return {...cartInfo};

Вот так создаются элементы корзины:
useEffect(()=>{
        setList(props.cart.map((item, index) =>{
            return <OpenCartElement info={item} />
        }))
        
    },[props])


В чем может быть проблема?
  • Вопрос задан
  • 186 просмотров
Решения вопроса 1
@Mysianio Автор вопроса
вайти в айти
Спасибо всем, кто помогал, дело было в том, что в редьюсере, я просто мутировал старый массив, вместо того чтобы передавать новый
Как было:
cartInfo.goodInfo.splice(i, 1);
Как стало:
cartInfo.goodInfo.splice(i, 1);
cartInfo.goodInfo = [...cartInfo.goodInfo];
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Robur
@Robur
Знаю больше чем это необходимо
Для начала проверьте срабатывает ли эффект при удалении.
Ответ написан
Ваш ответ на вопрос

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

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