列排序 APIs

状态

列排序状态使用以下形式存储在表格中:

tsx
export type ColumnOrderTableState = {
  columnOrder: ColumnOrderState
}

export type ColumnOrderState = string[]
export type ColumnOrderTableState = {
  columnOrder: ColumnOrderState
}

export type ColumnOrderState = string[]

表格选项

onColumnOrderChange

tsx
onColumnOrderChange?: OnChangeFn<ColumnOrderState>
onColumnOrderChange?: OnChangeFn<ColumnOrderState>

如果提供此函数,当 state.columnOrder 发生变化时,将使用 updaterFn 调用此函数。这会覆盖默认的内部状态管理,因此您需要在表格外部完全或部分地持久化状态变化。

表格 API

setColumnOrder

tsx
setColumnOrder: (updater: Updater<ColumnOrderState>) => void
setColumnOrder: (updater: Updater<ColumnOrderState>) => void

设置或更新 state.columnOrder 状态。

resetColumnOrder

tsx
resetColumnOrder: (defaultState?: boolean) => void
resetColumnOrder: (defaultState?: boolean) => void

columnOrder 状态重置为 initialState.columnOrder,或者传递 true 以强制默认空白状态重置为 []

列 API

getIndex

tsx
getIndex: (position?: ColumnPinningPosition) => number
getIndex: (position?: ColumnPinningPosition) => number

返��列在可见列顺序中的索引。可选择传递 position 参数以获取列在表格子部分中的索引。

getIsFirstColumn

tsx
getIsFirstColumn: (position?: ColumnPinningPosition) => boolean
getIsFirstColumn: (position?: ColumnPinningPosition) => boolean

如果列是可见列顺序中的第一列,则返回 true。可选择传递 position 参数以检查列是否是表格子部分中的第一列。

getIsLastColumn

tsx
getIsLastColumn: (position?: ColumnPinningPosition) => boolean
getIsLastColumn: (position?: ColumnPinningPosition) => boolean

如果列是可见列顺序中的最后一列,则返回 true。可选择传递 position 参数以检查列是否是表格子部分中的最后一列。