Skip to content

Commit

Permalink
fix(table): getSelectRows support multi-page
Browse files Browse the repository at this point in the history
getSelectRows支持跨页选择

close: #914
  • Loading branch information
mynetfan committed Aug 13, 2021
1 parent 2f6d133 commit 4b6025c
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
- 修复可编辑单元格未能正确显示`0`值的问题
- 修复 selection-change 事件在取消勾选时未能正确触发的问题
- 修复浅色主题下的全屏状态背景颜色不正确的问题
- 修复`getSelectRows`不支持远程数据跨页选择时获取完整数据的问题
- **Qrcode** 修复二维码组件在创建时未能及时绘制的问题
- **BasicModal** 修复`helpMessage`属性不起作用的问题

Expand Down
10 changes: 8 additions & 2 deletions src/components/Table/src/hooks/useRowSelection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -67,13 +67,19 @@ export function useRowSelection(

function setSelectedRowKeys(rowKeys: string[]) {
selectedRowKeysRef.value = rowKeys;
selectedRowRef.value = findNodeAll(
toRaw(unref(tableData)),
const allSelectedRows = findNodeAll(
toRaw(unref(tableData)).concat(toRaw(unref(selectedRowRef))),
(item) => rowKeys.includes(item[unref(getRowKey) as string]),
{
children: propsRef.value.childrenColumnName ?? 'children',
}
);
const trueSelectedRows: any[] = [];
rowKeys.forEach((key: string) => {
const found = allSelectedRows.find((item) => item[unref(getRowKey) as string] === key);
found && trueSelectedRows.push(found);
});
selectedRowRef.value = trueSelectedRows;
}

function setSelectedRows(rows: Recordable[]) {
Expand Down

0 comments on commit 4b6025c

Please sign in to comment.