---
title: Radio - 单选框
order: 7
path: /Radio
nav:
  order: 1
  title: 桌面组件
  path: /design
group:
  order: 3
  title: 数据录入
  path: /dataInput
---

单选框代表从一组互斥的选项中仅选择一个选项。

## 基础单选框

最简单的单选框形式，常用于表单中数据选项的选择。

<code src="./demos/base.tsx" height="400px"/>

## 成组的单选框

将单选框按一定属性组合使用的单选框组。

<code src="./demos/group.tsx" height="400px"/>

## 按钮单选框

按钮形式的单选框，选项更明显突出，适合强调选项的场景。

### 填充型单选按钮

<code src="./demos/fill.tsx" height="400px"/>

### 边框型单选按钮

<code src="./demos/outline.tsx" height="400px"/>

## 不同尺寸的按钮单选框

提供大、中（默认）、小三种单选框。

<code src="./demos/size.tsx" height="400px"/>

## 带图标的单选框

提供大、中（默认）、小三种单选框。

<code src="./demos/icon.tsx" height="400px"/>

## API

### Radio/Radio.Button

| 参数           | 说明                                                                                                         | 类型    | 默认值 |
| -------------- | ------------------------------------------------------------------------------------------------------------ | ------- | ------ |
| autoFocus      | 自动获取焦点                                                                                                 | boolean | false  |
| checked        | 指定当前是否选中                                                                                             | boolean | false  |
| defaultChecked | 初始是否选中                                                                                                 | boolean | false  |
| disabled       | 禁用 Radio                                                                                                   | boolean | false  |
| value          | 根据 value 进行比较，判断是否选中                                                                            | any     | -      |
| iconName       | icon 名称，支持名称见[Icon 模块](/design/universal/icon)(注意：当且仅当通过 iconName 设置的图标符合设计规范) | string  | -      |

### RadioGroup

单选框组合，用于包裹一组 `Radio`。

| 参数         | 说明                                                   | 类型                                                                                   | 默认值    |
| ------------ | ------------------------------------------------------ | -------------------------------------------------------------------------------------- | --------- |
| buttonStyle  | RadioButton 的风格样式，目前有描边和填色两种风格       | `outline` \| `solid`                                                                   | `outline` |
| defaultValue | 默认选中的值                                           | any                                                                                    |
| disabled     | 禁选所有子单选器                                       | boolean                                                                                | false     |
| name         | RadioGroup 下所有 `input[type="radio"]` 的 `name` 属性 | string                                                                                 |
| options      | 以配置形式设置子元素                                   | string\[] \| number\[] \| Array&lt;{ label: string value: string disabled?: boolean }> |
| optionType   | 用于设置 Radio `options` 类型                          | `default` \| `button`                                                                  | `default` |
| size         | 大小，只对按钮样式生效                                 | `large` \| `middle` \| `small`                                                         |           |
| value        | 用于设置当前选中的值                                   | any                                                                                    |           |
| onChange     | 选项变化时的回调函数                                   | function(e:Event)                                                                      |           |

## 方法

### Radio

| 名称    | 描述     |
| ------- | -------- |
| blur()  | 移除焦点 |
| focus() | 获取焦点 |
