需要选择所有行,而无需使用表API中可用的复选框触发器。我想将此触发器添加到一个单独的组件中,而不是在文档中表列之一是全选触发器的文档中。
沙盒游乐场:https://codesandbox.io/s/test-select-all-button-toggle-33c3g?file=/src/App.js
试图在文档https://react-table-omega.vercel.app/docs/api/useRowSelect#instance-properties上签出选项可能是一个很好的指示,但是我还没有弄清楚如何使它付诸实践。
并将其放入组件中
<IconHolder
onClick={toggleAllRows} //trigger select all rows here
>
<Text>
<Icon
actionIcon
name={true ? "ok-circled2" : "circle-thin"}
color={globalColors.purple}
size={20}
/>{" "}
Select All
</Text>
</IconHolder>
答案 0 :(得分:1)
使用table
对象中的toggleAllRowsSelected
。
toggleAllRowsSelected :
Function(?set: Bool) => void
使用此功能可以将所有行切换为选中还是不选中。 (可选)传递true
或false
将所有行设置为该状态
...
const {
getTableProps,
getTableBodyProps,
headerGroups,
rows,
prepareRow,
selectedFlatRows,
state: { selectedRowPaths },
toggleAllRowsSelected
} = table;
...
<button onClick={() => toggleAllRowsSelected()}>
Select All Rows
</button>