vue el-table数据排序
时间: 2023-11-15 08:07:10 浏览: 116
Vue的el-table组件提供了数据排序的功能,可以通过设置column的sortable属性来开启排序功能。当用户点击表头时,会触发表格的排序事件,此时可以获取到当前排序的列和排序的方式(升序或降序),可以将这些信息发送给后台,后台再根据这些信息返回排序过后的数据。
具体实现可以参考以下步骤:
1. 在el-table-column中设置sortable属性为true,表示该列可以排序。
2. 监听el-table的sort-change事件,获取当前排序的列和排序的方式。
3. 将获取到的排序信息发送给后台,后台根据这些信息返回排序过后的数据。
4. 将返回的数据更新到el-table中,即可实现数据排序。
举个例子,假设我们有一个学生选课系统,使用Vue的el-table组件展示选课记录,我们可以按照选课时间、课程名称等字段进行排序。具体实现可以参考以下代码:
```
<template>
<el-table :data="tableData" @sort-change="handleSortChange">
<el-table-column prop="courseName" label="课程名称" sortable></el-table-column>
<el-table-column prop="selectTime" label="选课时间" sortable></el-table-column>
<el-table-column prop="teacherName" label="授课教师"></el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: []
}
},
methods: {
handleSortChange({ column, prop, order }) {
// 发送排序信息给后台
this.$axios.post('/api/sort', { column, prop, order }).then(res => {
// 更新表格数据
this.tableData = res.data
})
}
}
}
</script>
```
阅读全文