Radio 单选框

可自定义或编辑单选框

引入

import { Radio, RadioBox, RadioGroup, RadioList } from 'mand-mobile-next'

Vue.createApp().component(Radio.name, Radio)
Vue.createApp().component(RadioBox.name, RadioBox)
Vue.createApp().component(RadioGroup.name, RadioGroup)
Vue.createApp().component(RadioList.name, RadioList)

代码演示

API

Radio Props

属性说明类型默认值备注
v-model选中项的nameany-
name唯一键值any--
label描述文案String--
disabled是否禁用选项Booleanfalse-
inline是否内联显示Booleanfalse-
icon选中项的图标Stringchecked-
icon-inverse非选中项的图标Stringcheck-
icon-disabled禁用项的图标Stringcheck-disabled-
icon-svg使用svg图标Booleanfalse-
size图标大小Stringmd-

RadioBox Props

单选框

属性说明类型默认值备注
name唯一键值anytrue当选中时,双向绑定的值
v-model选中的值anyfalse-
disabled是否禁用选择Booleanfalse-

RadioGroup Props

单选组,用以选中多个单选项。与RadioRadioBox组合使用

属性说明类型默认值备注
value选中的值Array--

RadioGroup Methods

check(name)

参数说明类型默认值
v-model需要选中的键值String-

Radio List Props

属性说明类型默认值备注
v-model选中项的valueany-
options选项数据源Array<{text, value, disabled, ...}>[]disabled为选项是否禁用
has-input是否具有可编辑项Booleanfalse-
input-label可编辑项的名称String-仅用于has-inputtrue
input-placeholder可编辑项的占位提示String-仅用于has-inputtrue
icon选中项的图标Stringchecked-
icon-inverse非选中项的图标Stringcheck-
icon-disabled禁用项的图标Stringcheck-disabled-
icon-size图标大小Stringlg-
icon-svg使用svg图标Booleanfalse-
icon-position图标位置Stringleftleft, right
is-slot-scope是否强制使用slot-scopeBoolean-某些情况下需要根据业务逻辑动态确定是否使用,可避免直接组件上加if/else

Radio List Methods

select(value)

设置选中项

参数说明类型
value选中项的valueString

Radio List Events

@change(option, index)

切换选中项事件

属性说明类型
option当前选中项的数据Object:{text, value, disabled, ...}
index当前选中项的索引Number

Radio List Slots

<template>
  <md-radio-list :options="data">
    <template slot-scope="{ option, index, selected }">
      <div class="custom-title" v-text="option.text"></div>
      <div class="custom-brief">{{ option.text }}的自定义描述</div>
    </template>
  </md-radio-list>
</template>