Data table modes
Virtual + infinite scroll · remote filtering & sorting
A simulated server holds 50,000 rows. Rows arrive 200 at a time as you near the bottom; filters and sorting are sent to the “server” (bind
filters / sort with remote). Only the rows in view are in the DOM.| No matching rows | |||||
Virtual · 20,000 rows in memory · client-side column filters
100001 | service-00000 | search | ok | 720 |
100002 | service-07919 | billing | warn | 781 |
100003 | service-15838 | platform | ok | 842 |
100004 | service-23757 | data | fail | 903 |
100005 | service-31676 | ml | ok | 64 |
100006 | service-39595 | infra | ok | 125 |
Paginated · column filters
6 | service-39595 | billing | ok | 325 |
7 | service-47514 | platform | warn | 386 |
8 | service-55433 | data | ok | 447 |
9 | service-63352 | ml | fail | 508 |
10 | service-71271 | infra | ok | 569 |
11 | service-79190 | search | ok | 630 |
12 | service-87109 | billing | warn | 691 |
13 | service-95028 | platform | ok | 752 |
Typed columns · header extras · row actions · copy & export
Columns declare a
type (numbers and dates end-align with tabular figures; dates show without a time, with the ISO value in the tooltip). Press Enter or double-click a row to activate it, right-click (or Shift+F10) for its menu, and Ctrl/Cmd+C to copy the checked rows, or the focused one, as TSV. “Copy / Export” in the bar does CSV, TSV and JSON; exportRows(format) is available through bind:this. For real link rows, render an anchor in the cell snippet.# | Timestamp | OK | Tags | ||||
|---|---|---|---|---|---|---|---|
1 | node-0 | Jan 1, 2024 | Mar 5, 2024, 2:00 PM | 1,000 | false | [] | |
2 | node-7 | Feb 2, 2024 | Mar 5, 2024, 2:01 PM | 1,137.25 | true | ["a"] | |
3 | node-14 | Mar 3, 2024 | Mar 5, 2024, 2:02 PM | 1,274.5 | true | ["a"] | |
4 | node-21 | Apr 4, 2024 | Mar 5, 2024, 2:03 PM | 1,411.75 | true | [] | |
5 | node-5 | May 5, 2024 | Mar 5, 2024, 2:04 PM | 1,549 | false | ["a"] | |
6 | node-12 | Jun 6, 2024 | Mar 5, 2024, 2:05 PM | 1,686.25 | true | ["a"] |