SegmentedRadioGroup

维护者:
zamkovskaya
GitHub
size
width
disabled
import {SegmentedRadioGroup} from '@gravity-ui/uikit';

SegmentedRadioGroup 组件用于创建一组单选按钮,用户可以在其中从多个选项中选择一个选项。

禁用状态

<SegmentedRadioGroup name="group1" defaultValue="Value 1" disabled>
    <SegmentedRadioGroup.Option value="Value 1">Value 1</SegmentedRadioGroup.Option>
    <SegmentedRadioGroup.Option value="Value 2">Value 2</SegmentedRadioGroup.Option>
    <SegmentedRadioGroup.Option value="Value 3">Value 3</SegmentedRadioGroup.Option>
</SegmentedRadioGroup>;

大小

使用该 size 属性来管理大 SegmentedRadioGroup 小。默认大小为 m

const options = [
<SegmentedRadioGroup.Option key="Value 1" value="Value 1">Value 1</SegmentedRadioGroup.Option>,
<SegmentedRadioGroup.Option key="Value 2" value="Value 2">Value 2</SegmentedRadioGroup.Option>,
<SegmentedRadioGroup.Option key="Value 3" value="Value 3">Value 3</SegmentedRadioGroup.Option>,
];

<SegmentedRadioGroup name="group1" defaultValue="Value 1" size="s">{options}</SegmentedRadioGroup>
<SegmentedRadioGroup name="group2" defaultValue="Value 1" size="m">{options}</SegmentedRadioGroup>
<SegmentedRadioGroup name="group3" defaultValue="Value 1" size="l">{options}</SegmentedRadioGroup>
<SegmentedRadioGroup name="group4" defaultValue="Value 1" size="xl">{options}</SegmentedRadioGroup>

宽度

使用该 width 属性来管理 SegmentedRadioGroup 宽度:

<div style={{width: 140, border: '2px dashed gray'}}>
  <div style={{marginBottom: 10}}>
    <SegmentedRadioGroup>
      <SegmentedRadioGroup.Option value="1" content="none" />
      <SegmentedRadioGroup.Option value="2" content="none********" />
    </SegmentedRadioGroup>
  </div>
  <div style={{marginBottom: 10}}>
    <SegmentedRadioGroup width="auto">
      <SegmentedRadioGroup.Option value="1" content="auto" />
      <SegmentedRadioGroup.Option value="2" content="auto********" />
    </SegmentedRadioGroup>
  </div>
  <div>
    <SegmentedRadioGroup width="max">
      <SegmentedRadioGroup.Option value="1" content="max" />
      <SegmentedRadioGroup.Option value="2" content="max" />
    </SegmentedRadioGroup>
  </div>
</div>

属性

姓名描述类型默认
儿童单选按钮的内容。ReactNode
残疾的切换单选按钮的 disabled 状态。booleanfalse
选项单选按钮的选项。SegmentedRadioGroupOptionProps[]
defaultValue设置组件挂载时的初始值状态。string
onUpdate当用户更改单选按钮状态并将新值作为回调参数提供时触发。(value: string) => void
onChange当用户更改单选按钮状态并将更改事件作为回调参数时触发。Function
onFocus无线电输入元素获得焦点时使用的事件处理程序。Function
onBlur无线电输入元素失去焦点时使用的事件处理程序。Function
宽度设置单选按钮的宽度。auto - max
尺寸设置单选按钮的大小。s xlm
名称name 输入元素的 HTML 属性。string
qadata-qa HTML 属性,用于测试string
风格style HTML 属性React.CSSProperties
classNameclass HTML 属性string

SegmentedRadioGroup.Option

SegmentedRadioGroup 组件还导出嵌套 Option 组件。您可以使用它在中创建单选按钮选项 SegmentedRadioGroup

const options: SegmentedRadioGroupOption[] = [
  {value: 'Value 1', content: 'Value 1'},
  {value: 'Value 2', content: 'Value 2'},
  {value: 'Value 3', content: 'Value 3'},
];
<SegmentedRadioGroup name="group1" defaultValue={options[0].value}>
  <SegmentedRadioGroup.Option content={options[0].content} value={options[0].value} />
  <SegmentedRadioGroup.Option content={options[1].content} value={options[1].value} />
  <SegmentedRadioGroup.Option content={options[2].content} value={options[2].value} />
</RadioGroup>

属性

姓名描述类型默认
儿童电台的内容(通常是标签)。ReactNode
内容电台的内容(儿童替代品)。ReactNode
残疾的切换无线电的 disabled 状态。booleanfalse
价值控制值string