antd表格点击行自动选中

196 阅读1分钟

antd表格点击行自动选中

定义方法:
onRowClickHandler = (record) => {
        let key = record.id;
        if (!this.state.selectedFun || key !== this.state.selectedFun.id) {
            this.setState({
                selectedFun: record
            })
        }
        // this.handleOk(record)
    };
render内:    
let selectedFunId;

        if (isNotEmptyObj(selectedFun)) {
            selectedFunId = selectedFun.id;
        }
        const rowSelection = {
            selectedRowKeys: selectedFunId ? [selectedFunId] : [],
            onChange: (selectedRowKeys, selectedRows) => {
                this.setState({ selectedFun: selectedRows[0] });
            },
            type: 'radio' as RowSelectionType,
        };


 <Table columns={columns}
    loading={loading}
    onChange={this.handleTableChange}
    dataSource={records && records["rows"]}
    rowKey={record => (record as any).id}
    pagination={paginationProps}
    rowSelection={rowSelection}
    onRowClick={this.onRowClickHandler}
    />