graymore2
@graymore2

Как почистить input checkbox :checked vue 3?

Добрый день.
У меня есть много checkbox связанных v-model="checkboxes". Так же, есть чекбокс "Выбрать всё", состояние которого зависит выбраны ли все остальные чекбоксы или нет.

Проблема следующая:
Выбор всех checkbox работает
const checkboxes = ref([])

UsersAllTable.value.data.forEach(function (element) {
   checkboxes.value.push('id_' + element.id)
})


Но если попробовать очистить массив checkboxes:
checkboxes.value.slice(0, checkboxes.value.length)
То элементы не удаляются, а просто клонируются. Соответственно состояние всех checkbox :checked остается в положении true.
Делаю предположение что это из-за v-model, в момент когда я пытаюсь почистить массив checkboxes, компоненты возвращают своё состояние и заного переопределяют этот массив. Как тут быть ? Спасибо.
  • Вопрос задан
  • 254 просмотра
Решения вопроса 1
Fragster
@Fragster
помогло? отметь решением!
https://developer.mozilla.org/ru/docs/Web/JavaScri...:
Метод slice() не изменяет исходный массив, а возвращает новую «одноуровневую» копию, содержащую копии элементов, вырезанных из исходного массива.

Для того чтобы "почистить" массив, нужно сделать так: checkboxes.value = [] а не извращаться по всякому.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы