组件
OneRadio 与 OneRadioGroup
OneRadio 是单体单选按钮,OneRadioGroup 通过 options 提供互斥的单选组。二者均支持受控与非受控模式,并复用 OneSelectOption 表达选项。
查看代码收起代码
import { OneRadio, OneRadioGroup } from '@geektech/one';
new OneRadio({ value: 'design', defaultChecked: true, ariaLabel: '设计' });
new OneRadioGroup({
defaultValue: 'weekly',
ariaLabel: '通知频率',
options: [
{ value: 'daily', label: '每天' },
{ value: 'weekly', label: '每周' },
],
});受控与非受控
checked 控制 OneRadio 的受控状态,value 控制 OneRadioGroup 的受控值;defaultChecked 与 defaultValue 提供非受控初始状态。
API
| 名称 | 签名 | 说明 |
|---|---|---|
value | value?: string | 选项值,选中时作为事件载荷。 |
checked | checked?: boolean | 受控选中状态。 |
defaultChecked | defaultChecked?: boolean | 非受控初始选中状态。 |
name | name?: string | 原生字段名;表单内由字段上下文接管。 |
disabled | disabled?: boolean | 禁用该单选按钮。 |
required | required?: boolean | 原生必填状态。 |
invalid | invalid?: boolean | 无效样式与 aria-invalid。 |
ariaLabel | ariaLabel?: string | 映射到 aria-label。 |
children | children?: Array<VNode | string> | 单选按钮后的标签文本。 |
input / change | (event: OneFieldValueEvent<string>) => void | 选中时发出 value: string 与 originalEvent: Event。 |
| 名称 | 签名 | 说明 |
|---|---|---|
options | options: readonly OneSelectOption[] | 互斥选项,支持 disabled 项。 |
value | value?: string | 受控选中值。 |
defaultValue | defaultValue?: string | 非受控初始值。 |
name | name?: string | 原生字段名。 |
disabled | disabled?: boolean | 禁用整个单选组。 |
invalid | invalid?: boolean | 无效样式与 aria-invalid。 |
ariaLabel | ariaLabel?: string | radiogroup 的可访问名称。 |