列可见性状态存储在表格中,使用以下结构:
export type VisibilityState = Record<string, boolean>
export type VisibilityTableState = { columnVisibility: VisibilityState}
enableHiding
enableHiding?: boolean
启用/禁用隐藏列
getCanHide
getCanHide: () => boolean
返回列是否可以隐藏
getIsVisible
getIsVisible: () => boolean
返回列是否可见
toggleVisibility
toggleVisibility: (value?: boolean) => void
切换列的可见性
getToggleVisibilityHandler
getToggleVisibilityHandler: () => (event: unknown) => void
返回一个函数,用于切换列的可见性。此函数可用于绑定到复选框的事件处理程序。
onColumnVisibilityChange
onColumnVisibilityChange?: OnChangeFn<VisibilityState>
如果提供了此函数,当 state.columnVisibility
发生变化时,将调用 updaterFn
。这将覆盖默认的内部状态管理,因此您需要在表格外部完全或部分地持久化状态更改。
enableHiding
enableHiding?: boolean
启用/禁用列的隐藏。
getVisibleFlatColumns
getVisibleFlatColumns: () => Column < TData > []
返回一个包含可见列(包括父列)的扁平数组。
getVisibleLeafColumns
getVisibleLeafColumns: () => Column < TData > []
返回一个包含可见的叶子节点列的扁平数组。
getLeftVisibleLeafColumns
getLeftVisibleLeafColumns: () => Column < TData > []
如果有列固定,返回一个包含在表格左侧可见的叶子节点列的扁平数组。
getRightVisibleLeafColumns
getRightVisibleLeafColumns: () => Column < TData > []
如果有列固定,返回一个包含在表格右侧可见的叶子节点列的扁平数组。
getCenterVisibleLeafColumns
getCenterVisibleLeafColumns: () => Column < TData > []
如果有列固定,返回一个包含在表格未固定/中间部分可见的叶子节点列的扁平数组。
setColumnVisibility
setColumnVisibility: (updater: Updater<VisibilityState>) => void
通过更新函数或值更新列的可见性状态
resetColumnVisibility
resetColumnVisibility: (defaultState?: boolean) => void
将列的可见性状态重置为初始状态。如果提供了 defaultState
,状态将重置为 {}
toggleAllColumnsVisible
toggleAllColumnsVisible: (value?: boolean) => void
切换所有列的可见性
getIsAllColumnsVisible
getIsAllColumnsVisible: () => boolean
返回是否所有列都可见
getIsSomeColumnsVisible
getIsSomeColumnsVisible: () => boolean
返回是否有些列可见
getToggleAllColumnsVisibilityHandler
getToggleAllColumnsVisibilityHandler: () => ((event: unknown) => void)
返回一个用于切换所有列可见性的处理程序,用于绑定到 input[type=checkbox]
元素。