fix: batch start/stop selected counts

This commit is contained in:
jialin
2025-02-18 19:51:22 +08:00
parent 6ea8cc9986
commit 3a021e7879
9 changed files with 346 additions and 207 deletions
+10 -4
View File
@@ -19,22 +19,28 @@ export default function useTableRowSelection() {
const removeSelectedKey = (rowKey: React.Key | React.Key[]) => {
if (Array.isArray(rowKey)) {
setSelectedRowKeys((keys) => keys.filter((key) => !rowKey.includes(key)));
const keys = selectedRowKeys.filter((key) => !rowKey.includes(key));
setSelectedRowKeys(keys);
setSelectedRows((rows) => rows.filter((row) => !rowKey.includes(row.id)));
return;
return keys;
}
setSelectedRowKeys((keys) => keys.filter((key) => key !== rowKey));
const keys = selectedRowKeys.filter((key) => key !== rowKey);
setSelectedRowKeys(keys);
setSelectedRows((rows) => rows.filter((row) => row.id !== rowKey));
return keys;
};
const removeSelectedKeys = (rowKeys: React.Key[]) => {
setSelectedRowKeys((keys) => keys.filter((key) => !rowKeys.includes(key)));
const keys = selectedRowKeys.filter((key) => !rowKeys.includes(key));
setSelectedRowKeys(keys);
setSelectedRows((rows) => rows.filter((row) => !rowKeys.includes(row.id)));
return keys;
};
const rowSelection = {
selectedRowKeys,
selectedRows,
enableSelection: true,
clearSelections,
onChange: onSelectChange,
removeSelectedKeys,