From bff71dbde6ab1ac2ef20b21eead749de77807adc Mon Sep 17 00:00:00 2001 From: zhangwenshuai Date: Wed, 24 Mar 2021 19:43:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=85=A8=E9=80=89=E5=8F=8D?= =?UTF-8?q?=E9=80=89=E9=94=99=E4=BC=A0id=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/apolloTable/component/Column.tsx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/components/apolloTable/component/Column.tsx b/components/apolloTable/component/Column.tsx index 09261ca..4437124 100644 --- a/components/apolloTable/component/Column.tsx +++ b/components/apolloTable/component/Column.tsx @@ -44,18 +44,22 @@ export default class TableColumn extends PureComponent { } const onToggle = () => { if (typeof onChange === 'function') { - const data = _.cloneDeep(selectIds); + // 初始为传过来的选中数据 + const data = _.cloneDeep(selectedRows); dataSource.map((item: any) => { + // 当前操作是否操作了选中数据 const index = data.findIndex((temp: any) => { - return temp === item.id; + return temp.id === item.id; }); if (checked) { + // 反选,从data中删除 index > -1 && data.splice(index, 1); } else { + // 全选,data中没有的新增 index === -1 && data.push(item); } }); - + // data为最终选中的数据(此处使用完整数据不使用id,为了兼容之前的业务逻辑) onChange(data); } }; -- 2.21.0