开关 Switch

Switch 组件用于在两个状态之间进行切换,常用于设置选项的开启或关闭。

何时使用

  • 需要在两个互斥状态之间切换时
  • 表单中需要用户进行布尔值选择时
  • 快速开关某个功能或设置时

示例

基础用法

最简单的 Switch 组件使用方式。

正在加载组件...
code

尺寸

Switch 组件支持三种尺寸。

正在加载组件...
code

变种

Switch 组件支持多种变种样式。

正在加载组件...
code

状态

Switch 组件支持多种状态。

正在加载组件...
code

自定义颜色

可以自定义开关的背景颜色。

正在加载组件...
code

交互式示例

Switch 组件支持受控模式。

正在加载组件...
code

所有尺寸和变种

展示所有尺寸和变种的组合。

正在加载组件...
code

非受控模式

使用 defaultChecked 属性的非受控模式。

正在加载组件...
code

API

Switch Props

参数说明类型默认值
checked是否开启(受控模式)boolean-
defaultChecked默认是否开启(非受控模式)boolean-
disabled是否禁用booleanfalse
size尺寸'default' | 'small' | 'mini''default'
variant变种'default' | 'primary' | 'secondary''default'
checkedColor自定义开启时的颜色string-
uncheckedColor自定义关闭时的颜色string-
onChange状态改变时的回调(checked: boolean, e: ChangeEvent<HTMLInputElement>) => void-
className自定义类名string-
id自定义 IDstring-

注意事项

  1. Switch 组件用于在两个状态之间进行切换
  2. 通过 checked 属性控制开关状态(受控模式)
  3. 通过 defaultChecked 属性设置默认状态(非受控模式)
  4. 通过 size 属性设置尺寸:
    • 'default':默认尺寸(84 × 40)
    • 'small':小尺寸(62 × 30)
    • 'mini':迷你尺寸(42 × 20)
  5. 通过 variant 属性设置变种:
    • 'default':默认变种
    • 'primary':主色调变种
    • 'secondary':次色调变种
  6. 通过 checkedColoruncheckedColor 属性可以自定义开关的颜色
  7. 在受控模式下,需要同时提供 checkedonChange 属性
  8. 在非受控模式下,可以使用 defaultChecked 属性设置初始状态
  9. Switch 组件支持键盘操作(Tab 键聚焦,空格键切换)
  10. 在暗色模式下,Switch 组件会自动适配主题颜色