аргументы фильтрации vue-tables-2, переданные из родительского компонента - PullRequest
0 голосов
/ 30 октября 2018

Можно ли использовать фильтрацию по умолчанию для клиентских таблиц в vue-tables-2 извне?

У меня есть родительский компонент, содержащий несколько таблиц vue, и я хочу иметь возможность передать строку из родительского компонента всем дочерним компонентам, каждый из которых содержит экземпляр таблицы vue.

1 Ответ

0 голосов
/ 30 октября 2018

С попыткой сохранить всю логику на стороне клиента, я думаю, что я собираюсь создать слой между необработанными данными таблицы и таблицей vue и применить свою логику там как вычисляемую функцию.

edit- все заработало.

Вот что я сделал для вычисленной части

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 ее копий в памяти.

...