You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取设置isRowSelectable属性后可选择的表格行总数量

统计表格可选中行数量的解决方案

注意:你当前的isRowSelectable={() => Math.random() > 0.5}写法存在逻辑缺陷:该函数每次被表格组件调用时都会生成新的随机值,行是否可选的状态会随每次渲染动态变化,既无法稳定统计数量,也会导致行选中态错乱,建议先固化可选状态再做统计。

推荐实现方案

  • 拿到表格原始数据源时,提前预计算每一行的可选状态,写入行数据的自定义字段固定下来:
const processedTableData = originalData.map(row => {
  return {
    ...row,
    // 预计算可选状态,后续不会再变动
    _isSelectable: Math.random() > 0.5
  }
})
  • 表格的isRowSelectable属性直接读取预存的标记:
    isRowSelectable={(row) => row._isSelectable}
  • 统计可选中行总数时直接过滤处理后的数据源即可:
    const selectableRowCount = processedTableData.filter(row => row._isSelectable).length

备选方案(仅适用于非随机的固定判断逻辑)

如果你的isRowSelectable判断逻辑是固定的(比如根据行的业务字段判断,不是随机生成),可以直接复用相同逻辑过滤原始数据源统计:
const selectableRowCount = originalData.filter(row => /* 此处写和isRowSelectable完全一致的判断逻辑 */).length

该方案不适用于你当前的随机判断场景,两次随机运算的结果不会完全匹配,统计值和表格实际可选行无法对应。

内容的提问来源于stack exchange,提问作者Nazar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 19:18:01