Element UI Table排序顺序错乱处理

文章展示了如何在Vue.js应用中使用El-Table组件进行数据排序。第一部分说明了如何通过`sort-method`直接在前端对支付金额列进行升序或降序排列。第二部分阐述了如果需要后端排序,需将`sortable`设为`custom`,并在`sort-change`事件中处理排序逻辑,向服务器请求排序后的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、(a, b) => { return a.total_money - b.total_money; } 

a-b>0表示a大于b;

a-b=0表示a等于b;

a-b<0表示a小于b;

<el-table-column 
    prop="total_money"
     label="支付金额(元)" 
    width="180" 
    sortable  
    :sort-method="(a, b) => { return a.total_money - b.total_money; }">
</el-table-column>

2、如果需要后端排序,需将sortable设置为custom,同时在 Table 上监听

sort-change事件,在事件回调中可以获取当前排序的字段名和排序顺序,从而向接口请求排序后的表格数据。 

<el-table
    :data="tableData"
    style="width: 100%"
    :default-sort = "{prop: 'date', order: 'descending'}" @sort-change="change">
    <el-table-column
      prop="date"
      label="日期"
      sortable="sortable"
      width="180">
    </el-table-column>
    <el-table-column
      prop="address"
      label="地址"
      :formatter="formatter">
    </el-table-column>
  </el-table>
var Main = {
    data() {
      return {
        tableData: [{
          date: '2016-05-02',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }, {
          date: '2016-05-04',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1517 弄'
        }, {
          date: '2016-05-01',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1519 弄'
        }]
      }
    },
    methods: {
      change(res,s){
        console.log(res)
        console.log("---",res.order)
      },
      formatter(row, column) {
        return row.address;
      }
    }
  }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值