Table
ui.widgets.TableEine einfache Tabelle mit festen Spalten und eigenen Zellen.
BEHAVIOR CONTRACT
Spaltenbreiten, Kopfzeile, gestreifte Zeilen, Sortierung und Zellen-Lebensdauer sind getrennte Belange.
RECORDED INTERACTION
Zeigt acht echte Zeilen und sortierbare Spalten.
pub fn buildTable(scope: *ui.Scope, cx: *ui.Cx) anyerror!*ui.Node {
const cols = [_]W.ColumnDef{
.{ .id = "name", .header = "Name", .width = 160 },
.{ .id = "role", .header = "Role", .width = 120 },
.{ .id = "age", .header = "Age", .width = 80, .sortable = true },
};
const t = try W.Table(.{ .columns = &cols, .row_count = 8, .striped = true, .render_cell = tableCell }).mount(scope, cx);
return t.wrapper;
}Der unveränderte Quellcode der Story aus dem Storybook (zenit 5f9add5+wip 2026-09-30). W steht für ui.widgets; col / row / label sind kleine Layout-Helfer des Storybooks.
TableProps
ui.widgets.Tablefn Table(props: TableProps) TableBuilderFeld
Typ
Standard
Beschreibung
columns[]const ColumnDef&.{}—
row_countusize0—
row_heightf3236—
header_heightf3240—
stripedboolfalse—
hoverablebooltrue—
table_width?f32null—
table_heightf32400—
render_cell?CellRenderFnnull—
on_sort?core.HandlerRefnull—
on_row_click?core.HandlerRefnull—
TableResult
ui.widgets.TableFeld
Typ
Standard
Beschreibung
wrapper*Node—
—
state*TableState—
—
vl_state?*VirtualListStatenull虚拟滚动模式下的 VirtualListState(可用于动态更新 row_count)