el-table对单条数据进行升降排序
时间: 2023-08-05 18:09:40 浏览: 91
可以使用`sort-method`属性来对单条数据进行升降排序。具体步骤如下:
1. 需要在`el-table`中设置`sort-method`属性,该属性需要接受一个函数作为参数。
2. 在该函数中,我们可以根据需要排序的字段值和排序方式来进行排序。
3. 排序后,返回排序后的数据即可。
下面是一个示例代码:
```html
<el-table :data="tableData" :sort-method="sortTable">
<el-table-column prop="name" label="姓名"></el-table-column>
<el-table-column prop="age" label="年龄"></el-table-column>
<el-table-column prop="address" label="地址"></el-table-column>
</el-table>
```
```javascript
export default {
data() {
return {
tableData: [
{ name: '张三', age: 18, address: '上海' },
{ name: '李四', age: 25, address: '北京' },
{ name: '王五', age: 22, address: '广州' }
]
}
},
methods: {
sortTable(data, sort) {
return data.sort((a, b) => {
if (sort.prop === 'age') {
return sort.order === 'ascending' ? a.age - b.age : b.age - a.age
} else if (sort.prop === 'address') {
return sort.order === 'ascending' ? a.address.localeCompare(b.address) : b.address.localeCompare(a.address)
} else {
return sort.order === 'ascending' ? a.name.localeCompare(b.name) : b.name.localeCompare(a.name)
}
})
}
}
}
```
在上面的代码中,我们定义了一个`sortTable`方法来对单条数据进行升降排序。该方法接受两个参数:需要排序的数据和排序方式。我们通过判断排序的字段来进行排序,例如年龄字段使用数字比较,地址和姓名字段使用字符串比较。最后,返回排序后的数据即可。
阅读全文