enableRowSelectionenableMultiRowSelectionenableSubRowSelectiononRowSelectionChangegetToggleAllRowsSelectedHandlergetToggleAllPageRowsSelectedHandlersetRowSelectionresetRowSelectiongetIsAllRowsSelectedgetIsAllPageRowsSelectedgetIsSomeRowsSelectedgetIsSomePageRowsSelectedtoggleAllRowsSelectedtoggleAllPageRowsSelectedgetPreSelectedRowModelgetSelectedRowModelgetFilteredSelectedRowModelgetGroupedSelectedRowModelgetIsSelectedgetIsSomeSelectedgetIsAllSubRowsSelectedgetCanSelectgetCanMultiSelectgetCanSelectSubRowstoggleSelectedgetToggleSelectedHandler行选择状态使用以下结构存储在表格中:
export type RowSelectionState = Record<string, boolean>
export type RowSelectionTableState = {
rowSelection: RowSelectionState
}
export type RowSelectionState = Record<string, boolean>
export type RowSelectionTableState = {
rowSelection: RowSelectionState
}
默认情况下,行选择状态使用每行的索引作为行标识符。通过向表格传递自定义的 getRowId 函数,可以使用自定义的唯一行 ID 来跟踪行选择状态。
enableRowSelection?: boolean | ((row: Row<TData>) => boolean)
enableRowSelection?: boolean | ((row: Row<TData>) => boolean)
enableMultiRowSelection?: boolean | ((row: Row<TData>) => boolean)
enableMultiRowSelection?: boolean | ((row: Row<TData>) => boolean)
enableSubRowSelection?: boolean | ((row: Row<TData>) => boolean)
enableSubRowSelection?: boolean | ((row: Row<TData>) => boolean)
启用/禁用父行被选中时子行的自动选择,或一个为每行启用/禁用子行自动选择的函数。
(与展开或分组功能结合使用)
onRowSelectionChange?: OnChangeFn<RowSelectionState>
onRowSelectionChange?: OnChangeFn<RowSelectionState>
如果提供,当 state.rowSelection 更改时,将使用 updaterFn 调用此函数。这会覆盖默认的内部状态管理,因此您需要在表格外部完全或部分地持久化状态更改。
getToggleAllRowsSelectedHandler: () => (event: unknown) => void
getToggleAllRowsSelectedHandler: () => (event: unknown) => void
返回一个可用于切换表格中所有行的处理程序。
getToggleAllPageRowsSelectedHandler: () => (event: unknown) => void
getToggleAllPageRowsSelectedHandler: () => (event: unknown) => void
返回一个可用于切换当前页面上所有行的处理程序。
setRowSelection: (updater: Updater<RowSelectionState>) => void
setRowSelection: (updater: Updater<RowSelectionState>) => void
设置或更新 state.rowSelection 状态。
resetRowSelection: (defaultState?: boolean) => void
resetRowSelection: (defaultState?: boolean) => void
将 rowSelection 状态重置为 initialState.rowSelection,或者可以传递 true 以强制将默认空白状态重置为 {}。
getIsAllRowsSelected: () => boolean
getIsAllRowsSelected: () => boolean
返回表格中的所有行是否都被选中。
getIsAllPageRowsSelected: () => boolean
getIsAllPageRowsSelected: () => boolean
返回当前页面上的所有行是否都被选中。
getIsSomeRowsSelected: () => boolean
getIsSomeRowsSelected: () => boolean
返回表格中是否有任何行被选中。
getIsSomePageRowsSelected: () => boolean
getIsSomePageRowsSelected: () => boolean
返回当前页面上是否有任何行被选中。
toggleAllRowsSelected: (value: boolean) => void
toggleAllRowsSelected: (value: boolean) => void
选中/取消选中表格中的所有行。
toggleAllPageRowsSelected: (value: boolean) => void
toggleAllPageRowsSelected: (value: boolean) => void
选中/取消选中当前页面上的所有行。
getPreSelectedRowModel: () => RowModel<TData>
getPreSelectedRowModel: () => RowModel<TData>
getSelectedRowModel: () => RowModel<TData>
getSelectedRowModel: () => RowModel<TData>
getFilteredSelectedRowModel: () => RowModel<TData>
getFilteredSelectedRowModel: () => RowModel<TData>
getGroupedSelectedRowModel: () => RowModel<TData>
getGroupedSelectedRowModel: () => RowModel<TData>
getIsSelected: () => boolean
getIsSelected: () => boolean
返回行是否被选中。
getIsSomeSelected: () => boolean
getIsSomeSelected: () => boolean
返回行的某些子行是否被选中。
getIsAllSubRowsSelected: () => boolean
getIsAllSubRowsSelected: () => boolean
返回行的所有子行是否都被选中。
getCanSelect: () => boolean
getCanSelect: () => boolean
返回行是否可以选择。
getCanMultiSelect: () => boolean
getCanMultiSelect: () => boolean
返回行是否可以多选。
getCanSelectSubRows: () => boolean
getCanSelectSubRows: () => boolean
返回父行被选中时行是否可以自动选择子行。
toggleSelected: (value?: boolean) => void
toggleSelected: (value?: boolean) => void
选中/取消选中行。
getToggleSelectedHandler: () => (event: unknown) => void
getToggleSelectedHandler: () => (event: unknown) => void
返回一个可用于切换行的处理程序。