Я играл с Bootstrap Vue и таблицами.
Моя проблема заключается в следующем: у меня есть несколько таблиц, которые динамически загружаются на страницу, и пользователи должны иметь возможность выбирать элементы в каждой из этих таблиц. Затем все выбранные элементы следует объединить в один массив, который затем можно отобразить вверху страницы.
Пока что я добавил следующее в каждую из таблиц:
@row-selected="onRowSelected"
А также следующий метод:
methods: {
onRowSelected(items) {
items.forEach((item) => {
if (!this.selectedHashtags.includes(item.hashtag)) {
this.selectedHashtags.push(item.hashtag);
}
})
},
}
Проблема в том, что как только я отменяю выбор элемента из таблицы, он не удаляет его из массива, и я изо всех сил пытаюсь найти способ заставить эту работу работать.
К сожалению, событие @row-selected
не отправляет идентификатор / ссылку таблицы, и я не могу найти способ получить все выбранные строки из каждой отдельной таблицы. Таким образом, я мог просто перебрать все this.$refs
, получить все выбранные строки и связать их вместе при каждом щелчке по строке.
По сути, проще всего было бы, если бы существовал способ программно получить все выбранные элементы из таблицы?
Есть мысли о том, как лучше всего этого добиться?
allSelectedRows
, в которой просто возвращает объединенный массив всего массива выбранных строк из всех таблиц. - person Anatoly   schedule 16.05.2020