在Ant Design中,如果在表格中使用Checkbox组件时,无法点击复选框,可能是由于以下几个原因:
下面是一个解决此问题的示例代码:
import React, { useState } from 'react';
import { Table, Checkbox } from 'antd';
const data = [
{ name: 'John', age: 28 },
{ name: 'Mike', age: 32 },
{ name: 'Lisa', age: 24 },
];
const App = () => {
const [selectedRowKeys, setSelectedRowKeys] = useState([]);
const onSelectChange = (selectedRowKeys) => {
setSelectedRowKeys(selectedRowKeys);
};
const rowSelection = {
selectedRowKeys,
onChange: onSelectChange,
};
const columns = [
{
title: 'Name',
dataIndex: 'name',
},
{
title: 'Age',
dataIndex: 'age',
},
{
title: 'Select',
key: 'select',
render: (_, record) => (
{
if (e.target.checked) {
setSelectedRowKeys([...selectedRowKeys, record.name]);
} else {
setSelectedRowKeys(selectedRowKeys.filter((key) => key !== record.name));
}
}}
/>
),
},
];
return (
);
};
export default App;
在上面的代码中,我们使用了useState来创建一个selectedRowKeys的状态变量,用于保存选中的行的keys。然后,在Checkbox的onChange事件中更新selectedRowKeys的值。同时,在render方法中,我们根据selectedRowKeys的值来控制复选框的选中状态。
这样,就可以实现在Ant Design表格中使用Antd复选框,并能够正确点击复选框来选择行数据了。
上一篇:Antd表格中出现重复列的问题
下一篇:Antd表格重复列的问题。