Skip to content

Radio Group 单选组

从一组选项中选择一个值。

命令行安装

bash
npx @loongship-kit/ui add radio-group

组件结构

角色组件职责使用条件
根组件RadioGroup管理选中值和键盘导航必需
单选项RadioGroupItem声明可选择的值并展示状态必需

基础用法

查看代码
vue
<template>
  <RadioGroup v-model="density" aria-label="Density">
    <label class="vp-demo-label-row"><RadioGroupItem value="default" /> Default</label>
    <label class="vp-demo-label-row"><RadioGroupItem value="comfortable" /> Comfortable</label>
    <label class="vp-demo-label-row"><RadioGroupItem value="compact" /> Compact</label>
  </RadioGroup>
</template>

水平排列

查看代码
vue
<template>
  <RadioGroup v-model="route" orientation="horizontal">
    <label><RadioGroupItem value="east" /> Eastbound</label>
    <label><RadioGroupItem value="west" /> Westbound</label>
    <label><RadioGroupItem value="north" disabled /> Northbound</label>
  </RadioGroup>
</template>

整组禁用

查看代码
vue
<template>
  <RadioGroup default-value="east" disabled aria-label="Disabled route">
    <label class="vp-demo-label-row"><RadioGroupItem value="east" /> Eastbound</label>
    <label class="vp-demo-label-row"><RadioGroupItem value="west" /> Westbound</label>
  </RadioGroup>
</template>

API

RadioGroup(主组件)

属性

属性类型默认值说明
v-modelAcceptableValue-当前选中值
defaultValueAcceptableValue-非受控模式的初始值
orientation'horizontal' | 'vertical''vertical'排列方向和方向键导航方式
disabledbooleanfalse是否禁用整组
dir'ltr' | 'rtl''ltr'阅读方向
loopbooleanfalse方向键导航是否首尾循环
namestring-表单字段名
requiredbooleanfalse是否必填
asstring | Component'div'渲染元素
asChildbooleanfalse合并到唯一子元素
classClassValue-自定义类名

事件

事件参数说明
update:modelValuevalue: AcceptableValue选中值改变时触发

插槽

插槽参数说明
default放置 RadioGroupItem

子组件

RadioGroupItem — 单个单选项

属性

属性类型默认值说明
valueAcceptableValue-当前单选项的值
disabledbooleanfalse是否禁用
idstring自动生成元素 id
namestring继承单选组表单字段名
requiredboolean继承单选组是否必填
asstring | Component'button'渲染元素
asChildbooleanfalse合并到唯一子元素
classClassValue-自定义类名

事件

事件参数说明
selectSelectEvent选择前触发,调用 event.preventDefault() 可阻止选择

插槽

无内容插槽;选中圆点由组件自动渲染。