antd table 删除行
时间: 2023-09-04 22:12:16 浏览: 239
添加删除TABLE行
要删除 Ant Design 的 Table 组件中的某一行,你可以使用 `rowSelection` 属性和 `selectedRowKeys` 属性来实现。
首先,在 Table 组件中添加 `rowSelection` 属性,设置 `type` 为 `checkbox`,并且添加 `onChange` 回调函数,代码如下:
```
<Table
rowSelection={{
type: 'checkbox',
onChange: (selectedRowKeys, selectedRows) => {
// TODO: 处理选中行变化的逻辑
},
}}
dataSource={dataSource}
columns={columns}
/>
```
然后,在 `onChange` 回调函数中,你可以通过 `selectedRowKeys` 获取当前选中的行的 key 值,这些 key 值可以用来删除对应的行。代码如下:
```
<Table
rowSelection={{
type: 'checkbox',
onChange: (selectedRowKeys, selectedRows) => {
// TODO: 处理选中行变化的逻辑
setSelectedRowKeys(selectedRowKeys);
},
selectedRowKeys,
}}
dataSource={dataSource}
columns={columns}
/>
<Button
onClick={() => {
// TODO: 处理删除行的逻辑
setDataSource(dataSource.filter((item) => !selectedRowKeys.includes(item.key)));
setSelectedRowKeys([]);
}}
>
删除选中行
</Button>
```
在删除行的逻辑中,我们使用 `selectedRowKeys` 和 `dataSource` 进行过滤,将未选中的行重新赋值给 `dataSource`,并且清空 `selectedRowKeys`。这样就可以实现删除选中行的功能了。
阅读全文