在项目中使用到了可展开的table,再将antd中的代码迁移到自己项目中后,发现了一个bug:
官网中的例子是每行单独展开,互不干扰的,
但是我在引用代码后,发现我无论我点击哪个,所有的行都会展开,开始我以为是代码粘贴的错误,检查一番后,发现没有问题
于是去阅读了一番table的api,展开功能的expandable下有个expandedRowRender控制展开的行
于是我将record打印出来,发现点击展开时,他会将所有的行数据都打印出来,而同样的操作打印官网的例子,则不是,在查了一些资料后,我发现table有个rowKey属性,用来绑定行的key值,具体代码:
<Table
columns={this.state.columns}
expandIconColumnIndex={6}
rowKey="id"
expandedRowRender={(record) => this.expandedRowRender(record)}
dataSource={this.state.VipOrderInfoList}
/>
注意:rowKey必须绑定一个唯一值(根据你返回的数据来定)
网友评论