Аргументы фильтрации vue-tables-2, переданные из родительского компонента
Можно ли использовать фильтрацию по умолчанию для клиентских таблиц в vue-tables-2 извне?
У меня есть родительский компонент, содержащий несколько таблиц vue, и я хочу иметь возможность передавать строку из родительского компонента всем дочерним компонентам, каждый из которых содержит экземпляр таблицы vue.
1 ответ
Пытаясь сохранить всю логику на стороне клиента, я думаю, что собираюсь создать слой между необработанными данными таблицы и таблицей vue и применить там свою логику как вычисляемую функцию.
редактировать - это сработало.
Вот что я сделал для вычисленной части
computed: {
searchRows: function () {
var filteredRows = this.rows;
var term = this.searchTerm;
if(this.searchTerm) {
filteredRows = [];
this.rows.forEach(function(entry) {
if(String(entry.id).includes(term) || String(entry.name).includes(term)) {
filteredRows.push(entry);
}
});
}
return filteredRows;
}
},
Я связал данные таблицы с вычисленным вызовом.
<v-client-table :columns="columns" :data="searchRows" :options="options">
Единственным недостатком, который я вижу, является то, что, если таблица становится достаточно большой, это может вызвать проблемы, потому что сейчас я храню до 2 копий в памяти.