Expose 인스턴스 메서드
API
initVirtualScroll
가상 리스트 가시 영역의 행 수와 열 수를 초기화합니다. initVirtualScrollX와 initVirtualScrollY를 동시에 호출하는 것과 동일합니다.
테이블의 props.autoResize는 기본값이 true이므로, 크기 변경 시 이 함수가 자동으로 호출됩니다.
사용자가 수동으로 크기 조절 시, 마우스 업 이벤트 후 이 함수를 호출하여 가상 리스트 가시 영역을 다시 계산할 수 있습니다.
매개변수 height를 전달하지 않으면 테이블 컨테이너 높이가 기본값으로 사용됩니다. 더 많은 행을 렌더링하려면 컨테이너 높이를 가져온 후 몇 행 높이를 더하면 됩니다.
/**
* 初始化虚拟滚动参数
* @param {number} [height] 虚拟滚动的高度
*/
initVirtualScroll(height?: number)initVirtualScrollX
가로 방향 가상 스크롤 열 수를 초기화합니다.
/**
* 初始化横向虚拟滚动参数
*/
initVirtualScrollX()initVirtualScrollY
세로 방향 가상 스크롤 행 수를 초기화합니다.
/**
* 初始化纵向虚拟滚动参数
* @param {number} [height] 虚拟滚动的高度
*/
initVirtualScrollY(height?: number)setCurrentRow
현재 선택된 행을 설정합니다.
/**
* 选中一行
* @param {string} rowKeyOrRow selected rowKey, undefined 为取消选中
* @param {boolean} option.silent 设置 true 则不会触发 `onCurrentChange`. 默认:false
* @param {boolean} option.deep 设置 true 则会递归选中子行。默认:false
*/
function setCurrentRow(rowKeyOrRow: string | undefined | DT, option = { silent: false, deep: false })setSelectedCell
현재 선택된 셀을 설정합니다 (props.cellActive=true 시生效).
/**
* 设置当前选中单元格 (props.cellActive=true)
* @param row 设置高亮单元格, undefined 则为清除选中
* @param col 列对象
* @param option.silent 设置 true 则不会触发 `onCurrentChange`. 默认:false
*/
function setSelectedCell(row?: DT, col?: StkTableColumn<DT>, option = { silent: false })setHighlightDimCell
강조 흐림 셀을 설정합니다.
/**
* 高亮一个单元格。暂不支持虚拟滚动高亮状态记忆。
* @param rowKeyValue 一行的key
* @param colKeyValue 列key
* @param options.method css-使用css渲染,animation-使用animation api。默认animation;
* @param option.className 自定义css动画的class。
* @param option.keyframe 如果自定义keyframe,则 highlightConfig.fps 将会失效。Keyframe:https://developer.mozilla.org/zh-CN/docs/Web/API/Web_Animations_API/Keyframe_Formats
* @param option.duration 动画时长。method='css'状态下,用于移除class,如果传入了className则需要与自定义的动画时间一致。
*/
function setHighlightDimCell(rowKeyValue: UniqKey, colKeyValue: string, option: HighlightDimCellOption = {})setHighlightDimRow
강조 흐림 행을 설정합니다.
/**
* 高亮一行
* @param rowKeyValues 行唯一键的数组
* @param option.method css-使用css渲染,animation-使用animation api,js-使用js计算颜色。默认animation
* @param option.className 自定义css动画的class。
* @param option.keyframe 如果自定义keyframe,则 highlightConfig.fps 将会失效。Keyframe:https://developer.mozilla.org/zh-CN/docs/Web/API/Web_Animations_API/Keyframe_Formats
* @param option.duration 动画时长。method='css'状态下,用于移除class,如果传入了className则需要与自定义的动画时间一致。
*/
function setHighlightDimRow(rowKeyValues: UniqKey[], option: HighlightDimRowOption = {})sortCol
테이블 정렬 열 dataIndex
sortStates
다중 열 정렬 상태 배열.
/**
* 排序状态数组
* @see SortState[]
*/
sortStates: SortState[];getSortColumns
정렬 열 정보 가져오기 {key:string,order:Order}[]
setSorter
/**
* 设置表头排序状态。
* @param colKey 列唯一键字段。如果你想要取消排序状态,请使用`resetSorter`
* @param order 正序倒序 'asc'|'desc'|null
* @param option.sortOption 指定排序参数。同 StkTableColumn 中排序相关字段。建议从columns中find得到。
* @param option.sort 是否触发排序-默认true
* @param option.silent 是否禁止触发回调-默认true
* @param option.force 是否触发排序-默认true
* @returns 返回当前表格数据
*/
function setSorter(
colKey: string,
order: Order,
option: {
sortOption?: SortOption<DT>;
force?: boolean;
silent?: boolean;
sort?: boolean
} = {}
): DT[];option.force가 true이면props.sortRemote가 true라도 정렬 트리거.option.silent가 true이면onSortChange콜백 트리거 안함.option.sortOption의 역할은 전달된colKey가columns에 없을 때 정렬 매개변수를 지정할 수 있습니다.某一 열을 숨겼지만 여전히 해당 열 필드로 정렬해야 하는 경우에有用.- 가장 높은 우선순위, 이것을 설정하면
colKey로 해당 열을 찾아 정렬하지 않습니다.
- 가장 높은 우선순위, 이것을 설정하면
resetSorter
정렬 상태 초기화
scrollTo
지정 위치로 스크롤
/**
* 设置滚动条位置
* @param top 设置null则不改变位置
* @param left 设置null则不改变位置
*/
function scrollTo(top: number | null = 0, left: number | null = 0)getTableData
테이블 데이터 가져오기, 현재 테이블 정렬 순서의 배열 반환
getRowIndex
rowKey를 기반으로 행 인덱스 가져오기
/**
* 获取行索引
* @param row rowKey 或 row 数据
* @returns 行索引,未找到返回 -1
*/
function getRowIndex(row: UniqKey | DT): numbergetColumnIndex
colKey를 기반으로 열 인덱스 가져오기
/**
* 获取列索引
* @param col colKey 或列对象
* @returns 列索引,未找到返回 -1
*/
function getColumnIndex(col: string | StkTableColumn<DT>): numbersetRowExpand
확장 행 설정
/**
*
* @param rowKeyOrRow rowKey or row
* @param expand 是否展开
* @param data { col?: StkTableColumn<DT> }
* @param data.silent 设置 true 则不会触发 `onToggleRowExpand`. 默认:false
*/
function setRowExpand(rowKeyOrRow: string | undefined | DT, expand?: boolean, data?: { col?: StkTableColumn<DT>; silent?: boolean })setAutoHeight
가변 행 높이 가상 리스트에서, 지정 행의 auto-row-height 저장 높이를 설정. 행 높이가 변경되면 이 메서드를 호출하여 행 높이 지우기 또는 변경 가능
function setAutoHeight(rowKey: UniqKey, height?: number | null)clearAllAutoHeight
모든 auto-row-height 저장 높이 지우기
setTreeExpand
트리 구조 확장 행 설정
/**
* @param row rowKey or row or row
* @param option.expand 不传则根据当前状态取反
*/
function setTreeExpand(row: (UniqKey | DT) | (UniqKey | DT)[], option?: { expand?: boolean })getSelectedArea
선택된 셀 정보 가져오기
function getSelectedArea(): {
rows: DT[];
cols: StkTableColumn<DT>[];
ranges: AreaSelectionRange[]
}setAreaSelection
드래그 선택 영역 설정
/**
* 设置拖选选区
* @param ranges 选区范围数组
* @param option.silent 设置 true 则不会触发 `onAreaSelectionChange`. 默认:false
* @param option.scrollToView 设置 true 则会自动滚动到选区位置. 默认:false
*/
function setAreaSelection(ranges: AreaSelectionRange[], option?: { silent?: boolean; scrollToView?: boolean })clearSelectedArea
선택된 셀 지우기
copySelectedArea
선택 영역 내용을 클립보드에 복사. 복사된 텍스트 내용 반환 (TSV 형식).
function copySelectedArea(): stringsetFilter(Beta)
필터 상태 설정(Beta). 설정 후 onFilterChange 이벤트가 트리거됩니다.
/**
* 设置筛选状态
* @param status 筛选状态对象,传 null 清除所有筛选
* @param option.remote 设置 true 则不会自动触发数据过滤,适用于远程筛选场景
* @param option.silent 设置 true 则不会触发 `onFilterChange` 事件,默认 false
*/
function setFilter(status: Record<UniqKey, FilterStatus> | null, option?: { remote?: boolean; silent?: boolean })