首页 > 解决方案 > 在 Vuetify 数据表中,如何访问选定的排序参数?

问题描述

我正在为 Vuetify 数据表构建一个导出工具,我需要将数据表当前按顺序排序的列传递给生成器。我想可能有一个变量我可以访问该信息,但我似乎找不到它。也许我必须覆盖排序函数来设置这样的东西?如果是这样,那会是什么样子?

标签: vue.jsvuetify.js

解决方案


我采用的解决方案是创建两个数组来处理这两个质量,并使用 update:sort-by 和 update:sort-desc 返回的事件更新它们,然后简单地访问它们。

<v-data-table
    :items="items"
    :headers="headers"
    :sort-by="sortBy"
    :sort-desc="sortDesc"
    multi-sort
    @update:sort-by="updateSort('by', $event)"
    @update:sort-desc="updateSort('desc', $event)"
></v-data-table>

export default {
    data () {
        return {
            sortBy: ['field1', 'field2'],
            sortDesc: [false, false],
        }
    },
    methods: {
        updateSort(byDesc, event){
            if(byDesc == 'by'){
                this.sortBy = event
            }else if(byDesc == 'desc'){
                this.sortDesc = event
            }
        },
        someOtherMethod(){
            console.log(this.sortBy);
            console.log(this.sortDesc);
        }
    }
}

推荐阅读