Radio 单选框 ​

在一组备选项中进行单选

WARNING

label 作为 value 来使用已经被 废弃, 建议label 只用来表示展示的文字

基础用法 ​

单选框不应该有太多的可选项, 如果你有很多的可选项你应该使用选择框而不是单选框。

通过 v-model 绑定变量,选中意味着变量的值为相应 Radio value 属性的值,value 可以是 String、Number 或 Boolean。支持 size 设置尺寸、disabled 禁用、border 渲染带边框样式。w-radio 标签中的内容(或 label 属性)将成为单选框后的介绍。

配置式选项 1.1.14 ​

除了手写 w-radio 子组件,还可以通过 options 属性以数据驱动的方式配置选项,适合选项来自接口数据的场景。

options 中每项支持 label(展示文字)、value(选中值)、disabled(禁用)字段。通过 type="button" 将选项渲染为按钮形态;当数据字段名不同时,可通过 props 自定义 label / value / disabled 对应的字段名。

基础用法:通过 options 配置选项
按钮形态:type="button"
自定义字段名:props

单选框组 ​

适用于在多个互斥的选项中选择的场景

结合 w-radio-group 元素和子元素 w-radio 可以实现单选组,为 w-radio-group 绑定 v-model,再为每一个 w-radio 设置好 value 属性即可,另外,还可以通过 change 事件来响应变化,它会传入一个参数 value 来表示改变之后的值。

默认
通过 change 事件来响应变化,它会传入一个参数 value 来表示改变之后的值。

允许取消选择 1.1.14 ​

通过 allow-deselect 属性设置为 true 来允许取消选择。

按钮样式 ​

按钮样式的单选组合。round 圆角按钮组;discrete 离散按钮组(按钮不相连);plain 轻量级按钮组;tight 紧凑按钮组(文字左右内边距收窄为 8px)。属性可组合使用,可在顶部勾选属性手动查看组合效果。

只需要把 w-radio 元素替换为 w-radio-button 元素即可。 此外,WinDesign Next 还提供了 size 属性用来控制单选框的大小。

长文本省略 ​

多语言场景下,选项文本可能较长。当单选框所在容器宽度受限(如固定宽度的分组、栅格列)时,选项保持单行显示,超出部分以省略号截断,鼠标悬浮在选项文字上可通过原生 title 查看完整内容。

默认样式
带边框

按钮文字省略 1.3.4 ​

设置 w-radio-button 的 show-overflow 属性后,按钮文字保持单行显示,超出部分以省略号截断,可与 tight 组合使用;也可在 w-radio-group 上统一开启(对组内所有按钮生效),或通过 options 配置项为单个选项设置 showOverflow。注意:show-overflow 需要配合宽度使用——按钮本身或其所在容器需要有限定宽度(如固定宽度、flex 收缩或栅格列),否则按钮会随内容自动撑开,不会出现省略。

按钮组排列方向 1.3.4 ​

direction="vertical" 纵向排列,默认 horizontal 横向排列。

Radio API ​

Attributes ​

属性名说明类型默认值
model-value / v-model选中项绑定值string / number / boolean—
value单选框的值string / number / boolean—
label单选框的 label 如果value没有值, label则作为value使用string / number / boolean—
disabled是否禁用单选框booleanfalse
border是否显示边框booleanfalse
tight 1.3.4是否开启紧凑版(左右间距均为 8px)booleanfalse
size单选框的尺寸enum—
name原始 name 属性string—

Events ​

事件名说明类型
change绑定值变化时触发的事件Function

Slots ​

插槽名说明
default自定义默认内容

RadioGroup API ​

Attributes ​

属性名说明类型默认值
model-value / v-model绑定值string / number / boolean—
size单选框按钮或边框按钮的大小enum—
disabled是否禁用booleanfalse
text-color按钮形式的 Radio 激活时的文本颜色string#ffffff
fill按钮形式的 Radio 激活时的填充色和边框色string#2d5afa
validate-event输入时是否触发表单的校验booleantrue
aria-label a11y原生 aria-label 属性string—
name原生 name 属性string—
id原生 id 属性string—
options 1.1.14选项的数据源, value 的 key 和 label 和 disabled 可以通过 props 自定义.array—
props 1.1.14配置选项, 可以自定义 value, label, disabled 的 key.object{value: 'value', label: 'label', disabled: 'disabled'}
type 1.1.14渲染选项的组件类型 (例如 'button')enum'radio'
allow-deselect 1.1.14是否允许取消选择booleanfalse
tight 1.3.4是否开启紧凑版(左右间距均为 8px),用于透传给组内 radio / radio-buttonbooleanfalse
show-overflow 1.3.4按钮文字超出时显示省略号,用于透传给组内 radio-button(仅按钮样式组可用)booleanfalse
direction 1.3.4横向/纵向排列enumhorizontal
plain 1.3.4轻量级按钮组(仅按钮样式组可用)booleanfalse
round 1.3.4圆角按钮样式(仅按钮样式组可用)booleanfalse
discrete 1.3.4按钮组是否离散(按钮不相连,仅按钮样式组可用)booleanfalse

Events ​

事件名说明类型
change绑定值变化时触发的事件Function

Slots ​

插槽名说明子标签
default自定义默认内容Radio / RadioButton

RadioButton API ​

Attributes ​

属性名说明类型默认
model-value / v-model选中项绑定值string / number / boolean—
value单选框的值string / number / boolean—
label单选框的 label 如果没有 value, label则作为value使用string / number / boolean—
disabled是否禁用单选框booleanfalse
size单选框的尺寸enum—
name原生 name 属性string—
tight 1.3.4是否开启紧凑版(左右间距均为 8px)booleanfalse
show-overflow 1.3.4文字超出时显示省略号(需配合按钮或容器的限定宽度使用)booleanfalse

Slots ​

插槽名说明
default默认插槽内容

Copyright 2025 Winning Health 版权所有