Наша разбивка на страницы и сортировка таблиц выполняются на сервере, но я все же хочу разрешить пользователю щелкать заголовки столбцов для сортировки. Мне нужно получить доступ к параметрам сортировки таблиц при изменении сортировки. Кажется, что события разделены
update:sort-by
update:sort-desc
I мог создать два метода, первое событие установило значение столбца (сортировки), а затем второй метод фактически инициировал сортировку . Но это звучит ужасно и чревато гоночными условиями или будущими ошибками.
Было бы лучше, если бы сортировка включала также данные desc / as c. Я попытался создать ссылку на таблицу, но по какой-то причине свойства, содержащие информацию о сортировке, пусты.
Параметр update: options содержит всю необходимую информацию, но это может сработать по причинам, отличным от сортировки, которая не тоже не идеал.
Так что я не уверен, что мне что-то здесь не хватает. Есть ли лучший способ выполнить sh это?
<v-data-table
ref="contractItemTable"
:headers="headers"
:items="contracts"
:disable-sort="isLoadingPage"
:server-items-length="tableTotal"
disable-pagination
hide-default-footer
@click:row="navigateToContract"
single-select
@update:sort-by="sortTable"
@update:sort-desc="sortTable"
item-key="id.id">
И JS
public sortTable(event) {
console.debug(this.$refs.contractItemTable.sortBy);
console.debug(this.$refs.contractItemTable.sortDesc);
}
Независимо от того, что я нажимаю, свойства sortBy и sortDes c являются пусто. Если я использую событие options, событие содержит правильные sortBy и sortDes c. Но, как указано выше, я хочу использовать не совсем то событие. У меня он работает, но я должен «игнорировать» событие опций начальной загрузки, поскольку это недопустимое время для срабатывания этого метода.