vue-vben-admin icon indicating copy to clipboard operation
vue-vben-admin copied to clipboard

使用setSelectedRowKeys设置选中行无法用getSelectRows获取

Open onaikoto opened this issue 3 years ago • 11 comments

用setSelectedRowKeys方法设置选中的行并用一个点击事件方法调用getSelectRows获得设置选中的行数据,但getSelectRows方法用获得的是空,要再选另一条数据才能获得,我是自行把ant升到了3.0.0-alpha.16 QQ20220106-100154 QQ20220106-100234

系统信息

  • 操作系统: macos monterey 12.0.1
  • Node 版本: 14.18.1
  • 包管理器 (npm/yarn/pnpm) 及其版本:pnpm 6.20.4

onaikoto avatar Jan 06 '22 02:01 onaikoto

你看下官方示例RefTable是没问题,你看看是否和官方版本一致,我用官方示例没有复现

lzdjack avatar Jan 07 '22 01:01 lzdjack

可能是没设置 rowKey 的原因? 我之前在项目中因为没设置这个造成了一些奇怪的选中问题。

tt-sevth avatar Jan 11 '22 13:01 tt-sevth

最好带上rowkey有很多功能会用的到

lzdjack avatar Jan 12 '22 00:01 lzdjack

解决了吗

chenhw avatar Oct 19 '22 14:10 chenhw

setSelectedRowKeys后, 不做table的选中取消操作, 第一次 getSelectRows 是获取不到值的,如果进行了操作后, 就可以拿到值了, 我目前是这个问题, rowkey我是设置了的

Erik5169 avatar Oct 25 '22 02:10 Erik5169

@Erik5169 我也一样,都是肯定设置了rowKey的

zxuanhong avatar Nov 05 '22 14:11 zxuanhong

@chenhw @Erik5169 @lzdjack 这本身就是一个伪命题。因为数据可能不在当前页,也可能是夸分页了,即使让antdesign vue给你选择的行,他也仅仅只能处理当前页,所以建议使用一个setSelectedRows方法,把当前keys对应数据全部设置进getSelectRows所对应的缓存ref中,具体看 #1571 合并处理方式

zxuanhong avatar Nov 05 '22 16:11 zxuanhong

@zxiaozhou 确实有这个问题 在弹出页面用setSelectedRowKeys设置选中后页面不操作点击确定时 用getSelectRows方法获取为空数组,用getSelectRowKeys可以获取 image image

已解决 用setSelectedRows再设置一遍

lhyAdmins000 avatar Feb 14 '23 03:02 lhyAdmins000

已解决 第一步(重设勾选的keys):setSelectedRowKeys(getSelectRowKeys()); 第二步(再获取已勾选的行数据):getSelectRows();

image

UltramanAce avatar Apr 09 '23 09:04 UltramanAce

今天遇到相同问题了,解决办法 1 . Table组件自己导出setSelectedRows方法 2. setSelectedRowKeys后自己再设置一遍setSelectedRows

看了一眼最新的代码,已经导出了setSelectedRows

upzhujie avatar Jul 06 '23 07:07 upzhujie

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days

anncwb avatar Apr 28 '24 01:04 anncwb