需求是 点击表格某一行选中,修改选中行的背景颜色
查看antd的官方文档 https://ant.design/components/table-cn/
会发现文档中给出了两个属性 rowClassName 和 onRow
rowClassName: 表格行的类名, 如下图: 我通过this.setRowClassName方法添加类名
onRow: 用于给表格添加事件, 如onClick, onMouseEnter 等内部事件
setRowClassName = (record) => {
const { tableId } = this.state;
return record.id === tableId ? `${tdSelectStyle.clickRowStyl}` : '';
};
onClickRow = (record) => {
return {
onClick: () => {
this.setState({
rowId: record.id,
});
},
};
}
……
<Table
onRow={this.onClickRow}
rowSelection={false}
rowClassName={this.setRowClassName}
dataSource={newcompileList && newcompileList.length > 0 ? newcompileList : []}
columns={this.compileColumns}
scroll={{ x: 1100 }}
/>
.clickRowStyl{
background-color : #e6f7ff;
}
.ant-table-tbody>.clickRowStyl:hover>td {
background-color : #e6f7ff;
}