记录解决问题的时刻
前言
因为在群里看到个提问,为什么用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
总结
问题可以解决,但不提倡,不太符合设计,我想这也是官方为什么不推荐的原因吧!
一天一个小发现,菜鸟冲啊