Не могу реализовать, чтоб кол-во товаров менялось сразу в массиве объектов.
Есть массив Cart, в который я пушу товары карт выглядит так:
Cart = [{id:1, img: url, name: name, quantity: 1, vendorCode: 123 , price: 123}]
Написал функцию для расчета кол-ва товара.
Проблема в том, что меняет значение только у первого товара в массиве, в HTML все отображается нормально, но в массиве кол-во увеличивается только у первого эл-та
function quantityTriggers() {
// Ищем кол-во товара в массиве
quantityInArray = cart.find(list => list.quantity),
// Ищем обертку товара
cartItem = document.querySelectorAll('.cart-item')
for (let i = 0; i < cartItem.length; i++) {
// Находим id в блоке cart-item
let testId = document.getElementById(`cart-item_${[i+1]}`)
testId.addEventListener('click', function (e) {
// Находим id кнопки +
plus = document.getElementById(`plus_${i + 1}`),
// Находим кол-во товара в html
quantity = document.getElementById(`quantity_${i+1}`),
// Переводим в число
quantityValue = parseInt(quantity.textContent)
// Если клик по кнопке +
if (e.target === plus) {
// Увеличиваем значение на 1
quantityValue++
// Переводим в строку и добавляем в html
quantity.innerText = String(quantityValue)
}
// Полученное значение присваиваем в объект
quantityInArray.quantity = quantityValue
})
}
}