az-table
自动收集自
crates/ui/az-table/README.md。
基于 az-dioxus-components 语义表格原语封装的数据驱动表格组件。
它适合两类场景:
- 上层只想喂
columns + rows,不想每次手写thead/tbody/tr/td - 组件库需要统一
az-*class contract,同时保留更低层原语给复杂页面自由组合
使用
use az_table::{AzTable, AzTableAlign, AzTableCell, AzTableColumn, AzTableRow};
use dioxus::prelude::*;
let columns = vec![
AzTableColumn {
key: "name".into(),
header: "Name".into(),
class: None,
align: AzTableAlign::Start,
},
AzTableColumn {
key: "runtime".into(),
header: "Runtime".into(),
class: None,
align: AzTableAlign::Center,
},
];
let rows = vec![
AzTableRow {
key: "curl".into(),
cells: vec![AzTableCell::from("az-edge"), AzTableCell::from("curl")],
class: None,
},
];
let _ = rsx! {
AzTable {
columns: columns,
rows: rows,
caption: Some("Edge runtimes".to_string()),
striped: true,
}
};
测试
单独跑这个 crate:
cargo test -p az-table
只跑对外渲染契约测试:
cargo test -p az-table --test public_api