问题描述:
Antd中新建一个表格后,默认只添加了鼠标经过事件,即:鼠标经过表格的每一行时,那一行就会添加一个淡色的背景。但是现在有需求,要给表格添加一个点击事件,就是在点击每一行时,也会添加一个背景效果。
解决方法:
查看Antd的官网文档可以发现,表格有rowClassName和onRow两个属性,我们通过这两个属性来实现表格的点击添加背景色效果。
1、在<Table>标签中指定这两个属性,如下代码:
<Table showHeader={false} columns={columns} dataSource={this.state.data} bordered={true} onRow={(record) => { return { onClick: (event) => { this.setState({ rowId: record.key, }); this._tableOnclick(event); //调用表格点击事件 }, // 点击行 onDoubleClick: (event) => {}, onContextMenu: (event) => {}, onMouseEnter: (event) => {}, // 鼠标移入行 onMouseLeave: (event) => {} }; }} rowClassName={this.setRowClassName} />
2、编写行点击事件和行添加类事件,如下代码:
//表格添加点击背景色事件 setRowClassName = (record) => { return record.key === this.state.rowId ? 'clickRowStyl' : ''; }
3、最后在样式文件中编写相应的样式代码:
.clickRowStyl{ background-color:lightgray } .ant-table-tbody>.clickRowStyl:hover>td{ background-color:lightgray }
4、最后效果如下图所示:
查看更多关于react引用Ant Design后,表格点击时添加背景色的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did222483