antd-- table表格排序

按照数字排序

要求后端返回的level是数字

  const columns = [
    {
      title: '等级,
      dataIndex: 'level',
      key: 'name',
      render: (_) =>_,
sorter: (a, b) => a.level - b.level,
    },
]

自定义排序:仅做示例

假设后端返回的不是数字,而是时间,比如2021-05-24 10:54:31

const columns=[   {
      title: '时间',
      dataIndex: 'gradeUpAt',
      render: (_) => _,
      sorter: {
        compare: (a, b) => {
          console.log('a')
          a = a.gradeUpAt == '无' ? 0 : new Date(a.gradeUpAt).getTime();
          b = b.gradeUpAt == '无' ? 0 : new Date(b.gradeUpAt).getTime();
          return a - b;
        },
      },
    },]

通过请求后端接口排序

分为四步:

  1. columns里面的sorter直接设为true
    const columns=[
    {
          title: '时间',
          dataIndex: 'exp',
          render: (_) => _,
          sorter: true
        },]

     

  2. 给table绑定onChange事件
     <Table
            columns={columns}
            dataSource={tabData}
        
            onChange={(pagination, filters, sorter) => { changetable(pagination, filters, sorter) }}
          />

     

  3. 监听onChange事件里面的sorter排序
      const changetable = (pagination, filters, sorter) => {
        if (sorter.order) {
    //当前处于升序或者降序 sorter.order == "descend" ? '降序' : '升序'
        } else {
          //取消排序
        }
      }

     

  4. 请求接口
  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值