Добрый день. Подскажите, пожалуйста. Есть метод, который должен удалять выбранные позиции в корзине, если они отмечены чекбоксом. Но что-то идет не так. Точнее я понимаю что - пытаюсь удалить по индексу, после каждого цикла индекс у объектов меняется,следовательно идет некорректное удаление. Как можно побороть?
deletePosition() {
for(let i = 0; i < this.listProducts.length; i++) {
if(this.listProducts[i].checkbox === true) {
this.listProducts.splice(this.listProducts[i], 1);
}
}
}
Значение чекбокса (true или false) записывается в объекте, поэтому идет сравнение по этому элементу
listProducts: [
{
name: 'Нож складной WENGER Evolution ,"Автобус" ,13 функций, 85 мм.WENGER',
checkbox: true,
image: require('./assets/product1.png'),
price: 400,
count: 10,
sum: 0,
showPopup: false
},
{
name: 'Рюкзак WENGER «NEO»',
checkbox: false,
image: require('./assets/product2.png'),
price: 200,
count: 3,
sum: 0,
showPopup: false
},
{
name: 'Перьевая ручка Waterman Hemisphere Essential, перо: нержавеющая сталь. WATERMAN',
checkbox: true,
image: require('./assets/product3.png'),
price: 600,
count: 1,
sum: 0,
showPopup: false
}
],
Скорее всего подхожу не с той стороны к вопросу..