表格的单选也是通过rowSelection来进行配置的,需要selectedRowKeys和onChange: (selectedRowKeys, selectedRows) => {}方法一起使用来安成表格的单选,selectedRowKeys接受一个数组,数组内是选项的key,onChange时去修改它。
代码如下:
const rowSelection = {
selectedRowKeys: type === 1 ? this.context.ConfigManage.geneRadio : this.context.ConfigManage.sortRadio,
onChange: (selectedRowKeys, selectedRows) => {
this.context.onRadioChange(selectedRowKeys, type, selectedRows);
},
};
return (
<Table
rowKey={(record) => record.id}
rowSelection={{
type: 'radio',
...rowSelection,
}}
className={styles.ChildModel}
columns={columns}
dataSource={tableData || []}
pagination={false}
bordered
/>
);
onRadioChange = (id, type, selectedRows) => {
const { serviceName } = selectedRows[0];
this.props.updateInfo({
geneRadio: type === 1 ? id : this.props.ConfigManage.geneRadio,
geneName: type === 1 ? serviceName : this.props.ConfigManage.geneName,
sortRadio: type === 2 ? id : this.props.ConfigManage.sortRadio,
sortName: type === 2 ? serviceName : this.props.ConfigManage.sortName,
});
};