Events
API
onSortChange
Triggered when sorting changes. When defaultSort.dataIndex is not found, col will return null.
onSortChange?: (col: StkTableColumn<DT> | null, order: Order, data: DT[], sortConfig: SortConfig<DT>) => void;onRowClick
Click event for a row.
onRowClick?: (ev: MouseEvent, row: DT, data: { rowIndex: number }) => void;onCurrentChange
Triggered when a row is selected. ev returns null if not triggered by a click event.
onCurrentChange?: (ev: MouseEvent | null, row: DT | undefined, data: { select: boolean }) => void;onCellSelected
Triggered when a cell is selected. ev returns null if not triggered by a click event.
onCellSelected?: (ev: MouseEvent | null, data: { select: boolean; row: DT | undefined; col: StkTableColumn<DT> | undefined }) => void;onRowDblclick
Double click event for a row.
onRowDblclick?: (ev: MouseEvent, row: DT, data: { rowIndex: number }) => void;onHeaderRowMenu
Right click event for table header.
onHeaderRowMenu?: (ev: MouseEvent) => void;onRowMenu
Right click event for table body row.
onRowMenu?: (ev: MouseEvent, row: DT, data: { rowIndex: number }) => void;onCellClick
Click event for a cell.
onCellClick?: (ev: MouseEvent, row: DT, col: StkTableColumn<DT>, data: { rowIndex: number }) => void;onCellMouseenter
Mouse enter event for a cell.
onCellMouseenter?: (ev: MouseEvent, row: DT, col: StkTableColumn<DT>) => void;onCellMouseleave
Mouse leave event for a cell.
onCellMouseleave?: (ev: MouseEvent, row: DT, col: StkTableColumn<DT>) => void;onCellMouseover
Mouse over event for a cell.
onCellMouseover?: (ev: MouseEvent, row: DT, col: StkTableColumn<DT>) => void;onCellMousedown
Mouse down event for a cell.
onCellMousedown?: (ev: MouseEvent, row: DT, col: StkTableColumn<DT>, data: { rowIndex: number }) => void;onHeaderCellClick
Click event for header cell.
onHeaderCellClick?: (ev: MouseEvent, col: StkTableColumn<DT>) => void;onScroll
Table scroll event.
onScroll?: (ev: Event, data: { startIndex: number; endIndex: number }) => void;onScrollX
Table horizontal scroll event.
onScrollX?: (ev: Event) => void;onColOrderChange
Header column drag event.
onColOrderChange?: (dragStartKey: string, targetColKey: string) => void;onThDragStart
Header column drag start.
onThDragStart?: (dragStartKey: string) => void;onThDrop
Header column drag drop.
onThDrop?: (targetColKey: string) => void;onRowOrderChange
Row drag event.
onRowOrderChange?: (dragStartKey: string, targetRowKey: string) => void;onColResize
Triggered when column width changes.
onColResize?: (col: StkTableColumn<DT>) => void;onFilterChange
Triggered when filter status changes. This callback is only triggered when calling the setFilter method to set the filter status.
onFilterChange?: (status: Record<UniqKey, FilterStatus>) => void;onToggleRowExpand
Triggered when expanding a row.
onToggleRowExpand?: (data: { expanded: boolean; row: DT; col: StkTableColumn<DT> | null }) => void;onToggleTreeExpand
Triggered when clicking to expand a tree row.
onToggleTreeExpand?: (data: { expanded: boolean; row: DT; col: StkTableColumn<DT> | null }) => void;onAreaSelectionChange
Area selection change event.
onAreaSelectionChange?: (ranges: AreaSelectionRange[]) => void;AreaSelectionRange
Cell selection range type. Each range describes the cells covered in the table via the index field.
type AreaSelectionRange = {
index: {
/** Column index range [startCol, endCol] (both ends inclusive) @deprecated Use begin/end instead */
x: [number, number];
/** Row index range [startRow, endRow] (both ends inclusive) @deprecated Use begin/end instead */
y: [number, number];
/** Start point index of the selection */
begin: { row: number; col: number };
/** End point index of the selection */
end: { row: number; col: number };
};
};| Field | Type | Description |
|---|---|---|
| index.x | [number, number] | Column index range covered by the selection, [startCol, endCol], both ends inclusive. Deprecated, use begin/end instead |
| index.y | [number, number] | Row index range covered by the selection, [startRow, endRow], both ends inclusive. Deprecated, use begin/end instead |
| index.begin | { row: number; col: number } | Start point index of the selection |
| index.end | { row: number; col: number } | End point index of the selection |
When using Ctrl multi-select or Shift range-select, ranges may contain multiple selection ranges.
onUpdateColumns
Update width when onUpdateColumns col is resized.
onUpdateColumns?: (cols: StkTableColumn<DT>[]) => void;