uiUI 组件系统
对比

分段选择与工具切换

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[]
multipletrue
disabledfalse
help"可同时选中多个选项"

事件

ui:change

安装、生命周期与完整 API ↗

INTERACTION NOTES

交互与可访问性

  • 明确该组是单选还是多选。
  • 每个项的名称应能脱离图标理解。

和相似组件的区别

Segmented Control 常选一个值;Toggle Group 也可表达多个按下状态。

RESEARCH & ALTERNATIVES

官方实现映射

以下是上游生态对同类交互的实现。上方运行的是 UI 自己的组件。

官方提供

支持单选与多选 toggle。

官方提供

选择相邻的互斥值。

关键状态

未选择单选多选禁用

Svelte / SvelteKit · 来源核验

一起了解

标签页 ↗单选框组 ↗按钮 ↗