分段选择与工具切换
Segmented Control / Toggle Group
把少量互斥值或可切换工具并排展示。
可同时选中多个选项
app.mjs
import { mount } from '@sofish/ui/browser';
const view = mount(
document.querySelector('#example'),
'toggle-group'
);
view.element.addEventListener('ui:change', event => {
console.log(event.detail.value);
});
// view.update({ ...nextProps });
// view.destroy();什么时候用
视图模式、对齐方式或紧密相关的工具选项。
什么时候不用
切换内容面板使用 Tabs;执行无状态动作使用 Button。
COMPONENT API
属性与事件
传入业务数据,通过事件连接你的应用。
| 属性 | 默认值 |
|---|---|
label | "选择文本样式" |
name | "sample-format" |
options | [{"value":"bold","label":"粗体"},{"value":"italic","label":"斜体"},{"value":"underline","label":"下划线"}] |
value | [] |
multiple | true |
disabled | false |
help | "可同时选中多个选项" |
事件
ui:change
INTERACTION NOTES
交互与可访问性
- 明确该组是单选还是多选。
- 每个项的名称应能脱离图标理解。
和相似组件的区别
Segmented Control 常选一个值;Toggle Group 也可表达多个按下状态。
RESEARCH & ALTERNATIVES
官方实现映射
以下是上游生态对同类交互的实现。上方运行的是 UI 自己的组件。
关键状态
Svelte / SvelteKit · 来源核验