or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

Files

docs

advanced-features.mdcolumns.mdconfiguration.mdgrid.mdindex.mdtable.mdtoolbar.md

table.mddocs/

0

# Core Table

1

2

The VxeTable component is the foundational table implementation providing comprehensive data display, interaction, and customization capabilities with high-performance virtual scrolling.

3

4

## Capabilities

5

6

### VxeTable Component

7

8

Core table component with virtual scrolling and extensive configuration options.

9

10

```typescript { .api }

11

/**

12

* Core table component for data display and interaction

13

*/

14

interface VxeTable extends ComponentPublicInstance {

15

// Basic configuration

16

data: Record<string, any>[];

17

height?: number | string;

18

minHeight?: number | string;

19

maxHeight?: number | string;

20

stripe?: boolean;

21

border?: boolean | string;

22

round?: boolean;

23

size?: VxeTablePropTypes.Size;

24

fit?: boolean;

25

loading?: boolean;

26

align?: VxeTablePropTypes.Align;

27

headerAlign?: VxeTablePropTypes.HeaderAlign;

28

footerAlign?: VxeTablePropTypes.FooterAlign;

29

showHeader?: boolean;

30

showFooter?: boolean;

31

32

// Display configuration

33

showOverflow?: VxeTablePropTypes.ShowOverflow;

34

showHeaderOverflow?: VxeTablePropTypes.ShowHeaderOverflow;

35

showFooterOverflow?: VxeTablePropTypes.ShowFooterOverflow;

36

emptyText?: string;

37

emptyRender?: VxeTablePropTypes.EmptyRender;

38

39

// Styling

40

rowClassName?: VxeTablePropTypes.RowClassName;

41

cellClassName?: VxeTablePropTypes.CellClassName;

42

headerRowClassName?: VxeTablePropTypes.HeaderRowClassName;

43

headerCellClassName?: VxeTablePropTypes.HeaderCellClassName;

44

footerRowClassName?: VxeTablePropTypes.FooterRowClassName;

45

footerCellClassName?: VxeTablePropTypes.FooterCellClassName;

46

rowStyle?: VxeTablePropTypes.RowStyle;

47

cellStyle?: VxeTablePropTypes.CellStyle;

48

headerRowStyle?: VxeTablePropTypes.HeaderRowStyle;

49

headerCellStyle?: VxeTablePropTypes.HeaderCellStyle;

50

footerRowStyle?: VxeTablePropTypes.FooterRowStyle;

51

footerCellStyle?: VxeTablePropTypes.FooterCellStyle;

52

53

// Advanced configuration objects

54

rowConfig?: VxeTablePropTypes.RowConfig;

55

columnConfig?: VxeTablePropTypes.ColumnConfig;

56

resizableConfig?: VxeTablePropTypes.ResizableConfig;

57

sortConfig?: VxeTablePropTypes.SortConfig;

58

filterConfig?: VxeTablePropTypes.FilterConfig;

59

radioConfig?: VxeTablePropTypes.RadioConfig;

60

checkboxConfig?: VxeTablePropTypes.CheckboxConfig;

61

tooltipConfig?: VxeTablePropTypes.TooltipConfig;

62

editConfig?: VxeTablePropTypes.EditConfig;

63

validConfig?: VxeTablePropTypes.ValidConfig;

64

editRules?: VxeTablePropTypes.EditRules;

65

expandConfig?: VxeTablePropTypes.ExpandConfig;

66

treeConfig?: VxeTablePropTypes.TreeConfig;

67

menuConfig?: VxeTablePropTypes.MenuConfig;

68

mouseConfig?: VxeTablePropTypes.MouseConfig;

69

areaConfig?: VxeTablePropTypes.AreaConfig;

70

keyboardConfig?: VxeTablePropTypes.KeyboardConfig;

71

clipConfig?: VxeTablePropTypes.ClipConfig;

72

fnrConfig?: VxeTablePropTypes.FnrConfig;

73

74

// Virtual scrolling

75

virtualXConfig?: VxeTablePropTypes.VirtualXConfig;

76

virtualYConfig?: VxeTablePropTypes.VirtualYConfig;

77

scrollbarConfig?: VxeTablePropTypes.ScrollbarConfig;

78

79

// Data management

80

footerData?: Record<string, any>[][];

81

keepSource?: boolean;

82

autoResize?: boolean;

83

syncResize?: boolean;

84

85

// Component methods

86

loadData(data: Record<string, any>[]): Promise<void>;

87

reloadData(data: Record<string, any>[]): Promise<void>;

88

updateData(): Promise<void>;

89

createData(records: Record<string, any>[]): Promise<void>;

90

createRow(records: Record<string, any> | Record<string, any>[]): Promise<void>;

91

revertData(rows?: any | any[], field?: string): Promise<void>;

92

clearAll(): Promise<void>;

93

syncData(): Promise<void>;

94

getTableData(): {

95

visibleData: Record<string, any>[];

96

fullData: Record<string, any>[];

97

tableData: Record<string, any>[];

98

};

99

clearData(): Promise<void>;

100

101

// Row operations

102

getRowNode(tr: HTMLElement): VxeTableDefines.RowInfo | null;

103

getRowById(rowid: string | number): any;

104

getRowid(row: any): string;

105

getRowIndex(row: any): number;

106

getVTRowIndex(row: any): number;

107

getVMRowIndex(row: any): number;

108

setRow(row: any, record: Record<string, any>): Promise<void>;

109

moveRowTo(rows: any | any[], targetRow: any): Promise<void>;

110

getCurrentRecord(): any;

111

setCurrentRow(row: any): Promise<void>;

112

clearCurrentRow(): Promise<void>;

113

114

// Column operations

115

getColumnById(colid: string): VxeTableDefines.ColumnInfo;

116

getColumnByField(field: string): VxeTableDefines.ColumnInfo;

117

getColumns(): VxeTableDefines.ColumnInfo[];

118

getVisibleColumns(): VxeTableDefines.ColumnInfo[];

119

loadColumn(columns: VxeColumnDefines.ColumnOptions[]): Promise<void>;

120

reloadColumn(columns: VxeColumnDefines.ColumnOptions[]): Promise<void>;

121

setColumnFixed(fieldOrColumn: string | VxeTableDefines.ColumnInfo, fixed: VxeColumnPropTypes.Fixed): Promise<void>;

122

setColumnWidth(fieldOrColumn: string | VxeTableDefines.ColumnInfo, width: number | string): Promise<void>;

123

hideColumn(fieldOrColumn: string | VxeTableDefines.ColumnInfo): Promise<void>;

124

showColumn(fieldOrColumn: string | VxeTableDefines.ColumnInfo): Promise<void>;

125

refreshColumn(): Promise<void>;

126

getCurrentColumn(): VxeTableDefines.ColumnInfo;

127

setCurrentColumn(fieldOrColumn: string | VxeTableDefines.ColumnInfo): Promise<void>;

128

clearCurrentColumn(): Promise<void>;

129

130

// Selection operations

131

getRadioRecord(): any;

132

setRadioRow(row: any): Promise<void>;

133

clearRadioRow(): Promise<void>;

134

isCheckedByRadioRow(row: any): boolean;

135

getCheckboxRecords(): Record<string, any>[];

136

setCheckboxRow(rows: Record<string, any>[], checked: boolean): Promise<void>;

137

toggleCheckboxRow(row: any): Promise<void>;

138

setAllCheckboxRow(checked: boolean): Promise<void>;

139

clearCheckboxRow(): Promise<void>;

140

isCheckedByCheckboxRow(row: any): boolean;

141

142

// Sorting

143

sort(sortConfs: VxeTableDefines.SortCheckedParams[]): Promise<void>;

144

clearSort(): Promise<void>;

145

getSortColumns(): VxeTableDefines.SortCheckedParams[];

146

147

// Filtering

148

filter(filters: VxeTableDefines.FilterCheckedParams[]): Promise<void>;

149

clearFilter(fieldOrColumn?: string | VxeTableDefines.ColumnInfo): Promise<void>;

150

closeFilter(): Promise<void>;

151

clearFilterByEvent(): Promise<void>;

152

isActiveFilterByColumn(fieldOrColumn: string | VxeTableDefines.ColumnInfo): boolean;

153

154

// Cell operations

155

getCellElement(row: any, fieldOrColumn: string | VxeTableDefines.ColumnInfo): HTMLElement;

156

focus(): Promise<void>;

157

blur(): Promise<void>;

158

159

// Export/Import

160

exportData(options?: VxeTablePropTypes.ExportConfig): Promise<void>;

161

openImport(options?: VxeTablePropTypes.ImportConfig): Promise<void>;

162

163

// Tree operations

164

setTreeExpand(rows: any[], expanded: boolean): Promise<void>;

165

setAllTreeExpand(expanded: boolean): Promise<void>;

166

toggleTreeExpand(row: any): Promise<void>;

167

clearTreeExpand(): Promise<void>;

168

isTreeExpandByRow(row: any): boolean;

169

getTreeExpandRecords(): any[];

170

loadTreeChildren(row: any, childRecords: any[]): Promise<void>;

171

172

// Row expansion

173

setRowExpand(rows: any[], expanded: boolean): Promise<void>;

174

setAllRowExpand(expanded: boolean): Promise<void>;

175

toggleRowExpand(row: any): Promise<void>;

176

clearRowExpand(): Promise<void>;

177

isRowExpandByRow(row: any): boolean;

178

getRowExpandRecords(): any[];

179

180

// Scrolling operations

181

getScroll(): VxeTableDefines.ScrollInfo;

182

scrollTo(scrollLeft: number, scrollTop?: number): Promise<void>;

183

scrollToRow(row: any, fieldOrColumn?: string | VxeTableDefines.ColumnInfo): Promise<void>;

184

scrollToColumn(fieldOrColumn: string | VxeTableDefines.ColumnInfo): Promise<void>;

185

clearScroll(): Promise<void>;

186

187

// Cell merging

188

setMergeCells(merges: VxeTableDefines.MergeOptions[]): Promise<void>;

189

removeMergeCells(merges: VxeTableDefines.MergeOptions[]): Promise<void>;

190

getMergeCells(): VxeTableDefines.MergeInfo[];

191

clearMergeCells(): Promise<void>;

192

193

// Layout and sizing

194

recalculate(): Promise<void>;

195

refreshScroll(): Promise<void>;

196

updateFooter(): Promise<void>;

197

setRowHeight(rows: any[], height: number | string): Promise<void>;

198

199

// Toolbar integration

200

connectToolbar($toolbar: VxeToolbarInstance): Promise<void>;

201

}

202

```

203

204

### Basic Table Props

205

206

Essential properties for table setup and data display.

207

208

```typescript { .api }

209

interface BasicTableProps {

210

/** Table data array */

211

data?: Record<string, any>[];

212

/** Table height (number for pixels, string for CSS values) */

213

height?: number | string;

214

/** Minimum table height */

215

minHeight?: number | string;

216

/** Maximum table height */

217

maxHeight?: number | string;

218

/** Enable row striping */

219

stripe?: boolean;

220

/** Border style ('default' | 'full' | 'outer' | 'inner' | 'none') */

221

border?: boolean | string;

222

/** Round corners */

223

round?: boolean;

224

/** Component size */

225

size?: 'mini' | 'small' | 'medium' | 'large';

226

/** Auto fit container width */

227

fit?: boolean;

228

/** Loading state */

229

loading?: boolean;

230

/** Cell content alignment */

231

align?: 'left' | 'center' | 'right';

232

/** Header alignment */

233

headerAlign?: 'left' | 'center' | 'right';

234

/** Footer alignment */

235

footerAlign?: 'left' | 'center' | 'right';

236

/** Show table header */

237

showHeader?: boolean;

238

/** Show table footer */

239

showFooter?: boolean;

240

}

241

```

242

243

### Virtual Scrolling Configuration

244

245

High-performance virtual scrolling for large datasets.

246

247

```typescript { .api }

248

interface VirtualScrollConfig {

249

/** Horizontal virtual scrolling configuration */

250

virtualXConfig?: {

251

/** Enable horizontal virtual scrolling */

252

enabled?: boolean;

253

/** Threshold to trigger virtual scrolling */

254

gt?: number;

255

/** Pre-render size */

256

preSize?: number;

257

/** Buffer size */

258

oSize?: number;

259

};

260

261

/** Vertical virtual scrolling configuration */

262

virtualYConfig?: {

263

/** Enable vertical virtual scrolling */

264

enabled?: boolean;

265

/** Scroll mode ('wheel' | 'native') */

266

mode?: string;

267

/** Threshold to trigger virtual scrolling */

268

gt?: number;

269

/** Pre-render size */

270

preSize?: number;

271

/** Buffer size */

272

oSize?: number;

273

};

274

275

/** Scrollbar configuration */

276

scrollbarConfig?: {

277

/** Horizontal scrollbar */

278

x?: {

279

/** Position ('top' | 'bottom') */

280

position?: string;

281

/** Visibility */

282

visible?: boolean;

283

};

284

/** Vertical scrollbar */

285

y?: {

286

/** Position ('left' | 'right') */

287

position?: string;

288

/** Visibility */

289

visible?: boolean;

290

};

291

};

292

}

293

```

294

295

### Row and Column Configuration

296

297

Advanced row and column behavior configuration.

298

299

```typescript { .api }

300

interface RowColumnConfig {

301

/** Row configuration */

302

rowConfig?: {

303

/** Row key field for tracking */

304

keyField?: string;

305

/** Use key for performance optimization */

306

useKey?: boolean;

307

/** Resizable rows */

308

resizable?: boolean;

309

/** Row height */

310

height?: number | string;

311

};

312

313

/** Column configuration */

314

columnConfig?: {

315

/** Resizable columns */

316

resizable?: boolean;

317

/** Use key for performance optimization */

318

useKey?: boolean;

319

/** Width calculation mode */

320

width?: 'auto' | number;

321

/** Minimum column width */

322

minWidth?: number;

323

/** Maximum fixed columns */

324

maxFixedSize?: number;

325

};

326

327

/** Column resizing configuration */

328

resizableConfig?: {

329

/** Drag mode ('auto' | 'manual') */

330

dragMode?: string;

331

/** Show drag tip */

332

showDragTip?: boolean;

333

/** Sync auto height */

334

isSyncAutoHeight?: boolean;

335

/** Sync auto width */

336

isSyncAutoWidth?: boolean;

337

/** Minimum height */

338

minHeight?: number;

339

};

340

}

341

```

342

343

**Usage Examples:**

344

345

```typescript

346

// Basic table setup

347

<VxeTable

348

:data="tableData"

349

border

350

stripe

351

height="400"

352

:virtual-y-config="{ enabled: true, gt: 100 }"

353

>

354

<VxeColumn field="id" title="ID" width="80"></VxeColumn>

355

<VxeColumn field="name" title="Name" min-width="120"></VxeColumn>

356

<VxeColumn field="age" title="Age" width="80"></VxeColumn>

357

</VxeTable>

358

359

// Virtual scrolling for large datasets

360

<VxeTable

361

:data="largeDataset"

362

:virtual-x-config="{ enabled: true, gt: 20 }"

363

:virtual-y-config="{ enabled: true, gt: 100 }"

364

:scroll-y="{ enabled: true, gt: 100 }"

365

height="600"

366

>

367

<!-- columns -->

368

</VxeTable>

369

370

// Programmatic API usage

371

const tableRef = ref<VxeTableInstance>();

372

373

// Load data

374

await tableRef.value?.loadData(newData);

375

376

// Get current selection

377

const currentRow = tableRef.value?.getCurrentRecord();

378

379

// Scroll to specific row

380

await tableRef.value?.scrollToRow(targetRow);

381

```

382

383

### Table Events

384

385

VxeTable provides comprehensive event coverage for all user interactions and data operations.

386

387

```typescript { .api }

388

interface VxeTableEvents {

389

// Data events

390

'update:data': (data: any[]) => void;

391

'data-change': (params: VxeTableDefines.DataChangeEventParams) => void;

392

'footer-data-change': (params: VxeTableDefines.FooterDataChangeEventParams) => void;

393

394

// Cell events

395

'cell-click': (params: VxeTableDefines.CellClickEventParams) => void;

396

'cell-dblclick': (params: VxeTableDefines.CellDblclickEventParams) => void;

397

'cell-menu': (params: VxeTableDefines.CellMenuEventParams) => void;

398

'cell-mouseenter': (params: VxeTableDefines.CellMouseenterEventParams) => void;

399

'cell-mouseleave': (params: VxeTableDefines.CellMouseleaveEventParams) => void;

400

401

// Header events

402

'header-cell-click': (params: VxeTableDefines.HeaderCellClickEventParams) => void;

403

'header-cell-dblclick': (params: VxeTableDefines.HeaderCellDblclickEventParams) => void;

404

'header-cell-menu': (params: VxeTableDefines.HeaderCellMenuEventParams) => void;

405

406

// Footer events

407

'footer-cell-click': (params: VxeTableDefines.FooterCellClickEventParams) => void;

408

'footer-cell-dblclick': (params: VxeTableDefines.FooterCellDblclickEventParams) => void;

409

'footer-cell-menu': (params: VxeTableDefines.FooterCellMenuEventParams) => void;

410

411

// Row selection events

412

'current-row-change': (params: VxeTableDefines.CurrentRowChangeEventParams) => void;

413

'current-column-change': (params: VxeTableDefines.CurrentColumnChangeEventParams) => void;

414

'radio-change': (params: VxeTableDefines.RadioChangeEventParams) => void;

415

'checkbox-change': (params: VxeTableDefines.CheckboxChangeEventParams) => void;

416

'checkbox-all': (params: VxeTableDefines.CheckboxAllEventParams) => void;

417

'checkbox-range-start': (params: VxeTableDefines.CheckboxRangeStartEventParams) => void;

418

'checkbox-range-change': (params: VxeTableDefines.CheckboxRangeChangeEventParams) => void;

419

'checkbox-range-end': (params: VxeTableDefines.CheckboxRangeEndEventParams) => void;

420

421

// Edit events

422

'edit-activated': (params: VxeTableDefines.EditActivatedEventParams) => void;

423

'edit-disabled': (params: VxeTableDefines.EditDisabledEventParams) => void;

424

'edit-closed': (params: VxeTableDefines.EditClosedEventParams) => void;

425

'valid-error': (params: VxeTableDefines.ValidErrorEventParams) => void;

426

427

// Sort and filter events

428

'sort-change': (params: VxeTableDefines.SortChangeEventParams) => void;

429

'clear-sort': (params: VxeTableDefines.ClearSortEventParams) => void;

430

'filter-change': (params: VxeTableDefines.FilterChangeEventParams) => void;

431

'clear-filter': (params: VxeTableDefines.ClearFilterEventParams) => void;

432

433

// Tree structure events

434

'toggle-tree-expand': (params: VxeTableDefines.ToggleTreeExpandEventParams) => void;

435

'toggle-row-expand': (params: VxeTableDefines.ToggleRowExpandEventParams) => void;

436

437

// Scroll events

438

'scroll': (params: VxeTableDefines.ScrollEventParams) => void;

439

'scroll-start': (params: VxeTableDefines.ScrollStartEventParams) => void;

440

'scroll-end': (params: VxeTableDefines.ScrollEndEventParams) => void;

441

'scroll-boundary': (params: VxeTableDefines.ScrollBoundaryEventParams) => void;

442

443

// Area selection and clipboard events

444

'cell-area-selection-start': (params: VxeTableDefines.CellAreaSelectionStartEventParams) => void;

445

'cell-area-selection-drag': (params: VxeTableDefines.CellAreaSelectionDragEventParams) => void;

446

'cell-area-selection-end': (params: VxeTableDefines.CellAreaSelectionEndEventParams) => void;

447

'cell-area-copy': (params: VxeTableDefines.CellAreaCopyEventParams) => void;

448

'cell-area-cut': (params: VxeTableDefines.CellAreaCutEventParams) => void;

449

'cell-area-paste': (params: VxeTableDefines.CellAreaPasteEventParams) => void;

450

451

// Drag and drop events

452

'row-dragstart': (params: VxeTableDefines.RowDragstartEventParams) => void;

453

'row-dragover': (params: VxeTableDefines.RowDragoverEventParams) => void;

454

'row-dragend': (params: VxeTableDefines.RowDragendEventParams) => void;

455

'column-dragstart': (params: VxeTableDefines.ColumnDragstartEventParams) => void;

456

'column-dragover': (params: VxeTableDefines.ColumnDragoverEventParams) => void;

457

'column-dragend': (params: VxeTableDefines.ColumnDragendEventParams) => void;

458

459

// Keyboard events

460

'keydown-start': (params: VxeTableDefines.KeydownStartEventParams) => void;

461

'keydown': (params: VxeTableDefines.KeydownEventParams) => void;

462

'keydown-end': (params: VxeTableDefines.KeydownEndEventParams) => void;

463

464

// Context menu events

465

'menu-click': (params: VxeTableDefines.MenuClickEventParams) => void;

466

467

// Resize events

468

'column-resizable': (params: VxeTableDefines.ColumnResizableEventParams) => void;

469

'column-resizable-change': (params: VxeTableDefines.ColumnResizableChangeEventParams) => void;

470

}

471

```

472

473

## Types

474

475

```typescript { .api }

476

// Table size options

477

type VxeTablePropTypes.Size = 'mini' | 'small' | 'medium' | 'large';

478

479

// Alignment options

480

type VxeTablePropTypes.Align = 'left' | 'center' | 'right';

481

482

// Overflow display options

483

type VxeTablePropTypes.ShowOverflow = boolean | 'ellipsis' | 'title' | 'tooltip';

484

485

// Row/cell styling function types

486

type VxeTablePropTypes.RowClassName = string | ((params: any) => string);

487

type VxeTablePropTypes.CellClassName = string | ((params: any) => string);

488

type VxeTablePropTypes.RowStyle = object | ((params: any) => object);

489

type VxeTablePropTypes.CellStyle = object | ((params: any) => object);

490

491

// Row and scroll information types

492

interface VxeTableDefines.RowInfo {

493

$seq: number;

494

seq: number;

495

rowIndex: number;

496

$rowIndex: number;

497

_rowIndex: number;

498

index: number;

499

$index: number;

500

_index: number;

501

row: any;

502

rowKey: string | number;

503

level: number;

504

parent: any;

505

children?: any[];

506

height: number;

507

top: number;

508

[key: string]: any;

509

}

510

511

interface VxeTableDefines.ScrollInfo {

512

virtualX: boolean;

513

virtualY: boolean;

514

scrollTop: number;

515

scrollLeft: number;

516

bodyWidth: number;

517

bodyHeight: number;

518

isScrollX: boolean;

519

isScrollY: boolean;

520

}

521

522

// Merge operation types

523

interface VxeTableDefines.MergeOptions {

524

row: any;

525

column: VxeColumnDefines.ColumnInfo;

526

rowspan?: number;

527

colspan?: number;

528

}

529

530

interface VxeTableDefines.MergeInfo {

531

row: any;

532

column: VxeColumnDefines.ColumnInfo;

533

rowspan: number;

534

colspan: number;

535

}

536

537

// Sort and filter parameter types

538

interface VxeTableDefines.SortCheckedParams {

539

column: VxeColumnDefines.ColumnInfo;

540

field: string;

541

order: 'asc' | 'desc' | null;

542

}

543

544

interface VxeTableDefines.FilterCheckedParams {

545

column: VxeColumnDefines.ColumnInfo;

546

field: string;

547

values: any[];

548

datas: any[];

549

}

550

551

// Column options for dynamic columns

552

interface VxeColumnDefines.ColumnOptions {

553

field?: string;

554

title?: string;

555

width?: number | string;

556

minWidth?: number | string;

557

maxWidth?: number | string;

558

type?: VxeColumnPropTypes.Type;

559

fixed?: VxeColumnPropTypes.Fixed;

560

align?: VxeColumnPropTypes.Align;

561

headerAlign?: VxeColumnPropTypes.HeaderAlign;

562

showOverflow?: VxeColumnPropTypes.ShowOverflow;

563

[key: string]: any;

564

}

565

566

// Event parameter types

567

interface VxeTableDefines.DataChangeEventParams {

568

type: string;

569

$event: Event;

570

}

571

572

interface VxeTableDefines.CellClickEventParams {

573

row: any;

574

rowIndex: number;

575

column: VxeColumnDefines.ColumnInfo;

576

columnIndex: number;

577

cell: HTMLElement;

578

triggerRadio: boolean;

579

triggerCheckbox: boolean;

580

triggerTreeNode: boolean;

581

triggerExpandNode: boolean;

582

$event: MouseEvent;

583

}

584

585

interface VxeTableDefines.CurrentRowChangeEventParams {

586

row: any;

587

rowIndex: number;

588

$event: Event;

589

}

590

591

interface VxeTableDefines.RadioChangeEventParams {

592

row: any;

593

rowIndex: number;

594

$event: Event;

595

}

596

597

interface VxeTableDefines.CheckboxChangeEventParams {

598

records: any[];

599

reserves: any[];

600

indeterminates: any[];

601

checked: boolean;

602

$event: Event;

603

}

604

605

interface VxeTableDefines.EditActivatedEventParams {

606

row: any;

607

rowIndex: number;

608

column: VxeColumnDefines.ColumnInfo;

609

columnIndex: number;

610

cell: HTMLElement;

611

$event: Event;

612

}

613

614

interface VxeTableDefines.ValidErrorEventParams {

615

row: any;

616

column: VxeColumnDefines.ColumnInfo;

617

cell: HTMLElement;

618

rule: any;

619

rules: any[];

620

$event: Event;

621

}

622

623

interface VxeTableDefines.SortChangeEventParams {

624

column: VxeColumnDefines.ColumnInfo;

625

field: string;

626

property: string;

627

order: 'asc' | 'desc' | null;

628

sortBy: string;

629

sortTime: number;

630

$event: Event;

631

}

632

633

interface VxeTableDefines.FilterChangeEventParams {

634

column: VxeColumnDefines.ColumnInfo;

635

field: string;

636

property: string;

637

values: any[];

638

datas: any[];

639

filters: any[];

640

filterTime: number;

641

$event: Event;

642

}

643

644

interface VxeTableDefines.ScrollEventParams {

645

type: string;

646

fixed: VxeColumnPropTypes.Fixed;

647

scrollTop: number;

648

scrollLeft: number;

649

isX: boolean;

650

isY: boolean;

651

$event: Event;

652

}

653

654

interface VxeTableDefines.ToggleTreeExpandEventParams {

655

row: any;

656

rowIndex: number;

657

column: VxeColumnDefines.ColumnInfo;

658

columnIndex: number;

659

$event: Event;

660

}

661

662

interface VxeTableDefines.MenuClickEventParams {

663

menu: any;

664

type: string;

665

row?: any;

666

rowIndex?: number;

667

column?: VxeColumnDefines.ColumnInfo;

668

columnIndex?: number;

669

$event: Event;

670

}

671

672

// Table instance type

673

interface VxeTableInstance extends ComponentPublicInstance, VxeTable {}

674

```