antd Table 复选框固定在最右侧

记录解决问题的时刻


前言

    因为在群里看到个提问,为什么用expandIconColumnIndex设置了却不生效,原以为对方是要改展示图标位置,结果一问下来才知道原来是要改复选框位置,虽然不解,但还是本着找到解决方案的原则,开始看antd Table源码


一、需要区分开的是expandIconColumnIndex只针对展示图标,有子表格或者展开内容那种

       这个属性看字面意思就很一目了然了,当然如果要改变展示图标位置,需要用上如下属性

        

二、切入正题

1.看属性

rowSelection属性中有个fixed,类型是布尔值,实际它还有一个类型为字符串

2.查源码

代码如下(示例):

  if ('fixed' in rowSelection) {
        selectionColumn.fixed = rowSelection.fixed;
      } else if (columns.some(column => column.fixed === 'left' || column.fixed === true)) {
        selectionColumn.fixed = 'left';
      }
      if (columns[0] && columns[0].key === 'selection-column') {
        columns[0] = selectionColumn;
      } else {
        columns.unshift(selectionColumn);
      }

可以看出fixed支持其他方式,默认left,固定在左侧,反向思考,那么右边是否也可以


代码地址:

vigilant-ardinghelli-ocywi1 - CodeSandbox

antd版本: 3.26.20

总结

     问题可以解决,但不提倡,不太符合设计,我想这也是官方为什么不推荐的原因吧!

     一天一个小发现,菜鸟冲啊

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值