components/datatable
データ表示 · 31 / 64

DataTable

ui.widgets.DataTable

フィルター、ページング、列の挙動を備えたデータテーブル。

BEHAVIOR CONTRACT

filter、page、columns、rows が読み戻し可能な一つの状態モデルを構成します。

RECORDED INTERACTION

harness が「admin」と入力すると、結果ページが変わります。

examples/storybook/stories.zig:3101
pub fn buildDataTable(scope: *ui.Scope, cx: *ui.Cx) anyerror!*ui.Node {
    const dt = try ui.widgets.DataTable(.{
        .columns = &DT_COLS,
        .rows = &DT_ROWS,
        .page_size = 3,
    }, scope, cx);
    if (dt.filter_input) |fi| fi.meta.ownership.meta.test_id = "story.datatable.filter";
    dt.wrapper.meta.ownership.meta.test_id = "story.datatable.table";
    return dt.wrapper;
}
GitHub でソースを見るexamples/storybook/stories.zig:3101

Storybook にあるこの story のコードそのままです(zenit 5f9add5+wip 2026-09-30)。W は ui.widgets のことで、col / row / label は Storybook 内の小さなレイアウトヘルパーです。

zenit · デュアルライセンスオープンソースプロジェクトは GPL-3.0-only のもとで無料で使えます。クローズドソースや商用製品には商用ライセンスが必要です。作者への連絡先:zongyi.xzy#gmail.com(# を @ に置き換え)zenit 5f9add5+wip 2026-09-30