Аргументы фильтрации 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 копий в памяти.

Другие вопросы по тегам