imgUrl, price});
setIsAdded(!isAdded)
}
Функция вызывается при клике на изображение "+"(добавляет в корзину), но проблема в том что при быстром нажатии несколько раз, добавляется в корзину несколько одинаковых товаров, игнорируя фильтр, почему так происходит?
А где фильтр?
Фильтра нет
В другой функции, в родительском
А он есть
ОнПлюс синхронный?
Сейчас скину эту функцию
const onAddToCart = (obj) => { if(cartItems.filter(item => item.imgUrl === obj.imgUrl).length === 0) { axios.post('https://733ffbedc4ca6d7c48f86.mockapi.io/cart', obj).then(res => { setCartItems(prev => [...prev, res.data]); console.log('Товар добавлен в корзину'); }); } };
У тебя аксиос выполнится после того, как ещё нажмёшь кучу раз
Поставь кнопку дизейблд, пока Аксиос, а потом отключи
Обсуждают сегодня