关于table的selectedRowKeys和selectedRows

项目使用的组件库是antd

页面中有很多table,有的table有行前面的复选框,于是就有了selectedRowkeys和selectedRows的事。他们两个都是数组,selectedRowkeys存的是table的rowKey,也就是表格中数据的主键,而selectRows存的是所选中的对象们。

当鼠标选中一行,即一个对象时 selectedRowkeys中就会push一个key进去,选多个就会在数组结尾追加多个,也就是说selectedRowkeys中元素的顺序和选择的顺序保持一致,与表格中数组的顺序无关。

而selectedRows则不同,当然这个数组中对象的个数与selectedRowkeys数组的长度必然是一致的,但其中对象的顺序则与选择的顺序无关,只是按照表格中所列数组的上下顺序排列的。例如:

从下至上依次选中3条数据,c,b,a, 那么selectedRows中的三个对象的顺序则是 a,b,c,无论选择的顺序是怎样的,即使有取消后又选中的情况,数组中元素的顺序也是不会变的,

idvalue
1a
2b
3c

另一个,这是个坑!!!

如果列表是分页的 例如有2页,第一页选了一条数据,第二页选了一条数据,则selectedRowKeys中有两个元素,即所选两条数据的rowkey,而selectedRows中则只有一条,只有当前页面上显示的一条

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值