按钮

Button操作与导航

陶土底的主按钮一屏只放一个;次要、描边与透明按钮承担其余操作,红色只留给删除。按下时缩到 0.98 并以弹簧回弹;加载时文字隐去、转圈居中,按钮宽度不变。

预览

属性

名称类型默认值说明
variantSignal<ButtonVariant>PrimaryPrimary / Secondary / Ghost / Outline / Danger / DangerSoft。
sizeButtonSizeMdXs 26px、Sm 30px、Md 34px、Lg 40px。
iconMaybeProp<IconName>None文字前的图标。
loadingSignal<bool>false加载中:不响应点击,标 aria-busy。
disabledSignal<bool>false禁用。
type&'static str"button"表单内提交时传 "submit"。
classSignal<String>空附加类名。
onclickOption<Callback<MouseEvent>>None点击回调。

键盘

Enter / Space
触发按钮。

用法

src/components/ui/controls.rs
Leptos view!
let deleting = RwSignal::new(false);

view! {
    <Button onclick=move |_| publish()>"\u53D1\u5E03\u6587\u7AE0"</Button>
    <Button variant=ButtonVariant::Secondary icon=IconName::Save>"\u4FDD\u5B58\u8349\u7A3F"</Button>
    <Button variant=ButtonVariant::Danger loading=deleting>"\u6C38\u4E45\u5220\u9664"</Button>
}