Задать вопрос
@Gigabait

Как можно выделить все элементы кроме нажатого при нажатии?

Подскажите как можно выделить все элементы(li) кроме нажатого ?
Циклом вывожу массив,
<ul class="list-group" v-for="item in items">
        <li @click="reciveitems(item)" class="list-group list-group-item"><img :src="item.img" class="rounded mx-auto" :alt="item.name">
          <p class="count position-absolute">{{ item.count }}</p>
          <p class="name position-absolute">{{ item.name }}</p>
        </li>
      </ul>


Мне нужно еще вести индексы в цикле и потом передать этот индекс в функцию при клике, это будет нажатый элемент,
а как мне выбрать остальные элементы ?
  • Вопрос задан
  • 162 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
Xuxicheta
@Xuxicheta
инженер
открываем документацию Vue и встречаем там такой пример
<ul id="example-2">
  <li v-for="(item, index) in items">
    {{ parentMessage }} - {{ index }} - {{ item.message }}
  </li>
</ul>

дорабатываем его
<ul id="example-2">
  <li v-for="(item, index) in items" @click="selectAllExcept(index)">
    {{ parentMessage }} - {{ index }} - {{ item.message }}
  </li>
</ul>

methods: {
 selectAllExcept(index) {
   this.items.forEach((el, i) => {
      el.selected = i !== index;
   })
 }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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