@jose
Для реализации фильтрации по клику на Vue.js необходимо выполнить следующие шаги:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
{{ item.name }} export default { data() { return { items: [ { id: 1, name: 'Item 1', selected: false }, { id: 2, name: 'Item 2', selected: false }, { id: 3, name: 'Item 3', selected: false } ] }; }, methods: { toggleFilter(item) { item.selected = !item.selected; // вызвать метод, который будет применять фильтр на основе выбранных элементов } } }; |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
... methods: { toggleFilter(item) { item.selected = !item.selected; this.applyFilter(); // применить фильтр при каждом клике по элементу }, applyFilter() { // создать новый массив, в котором будут только выбранные элементы const filteredItems = this.items.filter(item => item.selected); // выполнить операции на основе выбранных элементов if (filteredItems.length === 0) { // показать все элементы } else { // скрыть все элементы, которые не входят в выбранный набор } } } ... |
Вышеприведенный код приведет к изменению статуса выбранности элемента при клике по нему, а затем к фильтрации элементов на основе выбранных элементов.