RadioGroup ( 多选框组)
支持布局方向(横向或纵向)。不同的显示模式(radio、button、cell)丰富主题配置,
支持平台
安卓 | ios | 鸿蒙 | web | 微信小程序 |
---|---|---|---|---|
√ | √ | √ | √ | √ |
示例代码
html
<template>
<t-page main-class="p-30">
<t-card title="RadioGroup 多选框组" main-class="mb-30"
sub-title="支持布局方向(横向或纵向)。不同的显示模式(radio、button、cell)丰富主题配置"></t-card>
<t-card title="亮点" main-class="mb-30" title-class="c-red"
sub-title="支持任意子组件参与布局,支持父组件统一设置子组件属性,让代码更简洁【父组件拥有子组件所有属性,子组件和父组件同时设置相同属性,子组件属性优先级高于父组件】"
sub-title-class="c-red"></t-card>
<t-radio-group :main-class="`${radio_mode=='cell'?'fv':'fl'} tdr tdb fww tdp mb-30`" v-model="radio"
:size="radio_size" :type="radio_type" icon="checkbox-blank-circle-fill" :mode="radio_mode"
child-class="mrb-30" icon-class="ats-0.5" :transition="false">
<t-radio-item value="1">苹果</t-radio-item>
<t-radio-item value="2">香蕉</t-radio-item>
<t-radio-item value="3">橙子</t-radio-item>
<t-radio-item value="4">石榴</t-radio-item>
<t-radio-item value="99" :border="false">梨子</t-radio-item>
</t-radio-group>
<t-button main-class="mb-30" @click="test">赋值{{radio_size}}</t-button>
<t-group title="单选类型:" main-class="mb-30">
<t-radio-group main-class="f fl fww tdr tdb" v-model="radio_mode" icon="checkbox-blank-circle-fill"
type="p" icon-class="ats-0.5">
<t-radio-item value="radio">radio</t-radio-item>
<t-radio-item value="button">button</t-radio-item>
<t-radio-item value="cell">cell</t-radio-item>
</t-radio-group>
</t-group>
<t-row main-class="faic tdb tdp mb-30">
<t-text main-class="mr-10">主题:</t-text>
<t-radio-group main-class="f fl fww tdr" v-model="radio_type" icon="checkbox-blank-circle-fill" type="p"
icon-class="ats-0.5">
<t-radio-item value="">默认</t-radio-item>
<t-radio-item value="p">主要</t-radio-item>
<t-radio-item value="s">成功</t-radio-item>
<t-radio-item value="i">信息</t-radio-item>
<t-radio-item value="w">警告</t-radio-item>
<t-radio-item value="e">危险</t-radio-item>
</t-radio-group>
</t-row>
<t-row main-class="faic tdb tdp mb-30">
<t-text main-class="mr-10">尺寸:</t-text>
<t-radio-group main-class="f fl fww tdr" v-model="radio_size" icon="checkbox-blank-circle-fill" type="p"
icon-class="ats-0.5">
<t-radio-item value="large">large</t-radio-item>
<t-radio-item value="medium">medium</t-radio-item>
<t-radio-item value="small">small</t-radio-item>
<t-radio-item value="mini">mini</t-radio-item>
</t-radio-group>
</t-row>
</t-page>
</template>
<script setup>
const radio = ref<string>('1')
const radio_type = ref<string>('s')
const radio_mode = ref<string>('radio')
const radio_size = ref<string>('medium')
const type = ref<string>('s')
function test() {
radio.value = "3"
}
function themeupdate(e : string) {
type.value = e == '0' ? '' : e
}
</script>
属性
名称 | 类型 | 默认值 | 说明 | 可选值 |
---|---|---|---|---|
size | String | mini | 组件尺寸 | large(大尺寸), medium(中尺寸), small(小尺寸), mini(迷你) |
type | String | "" | 组件类型 | info(信息), primary(正常), error(错误), warning(警告), success(成功) |
disabled | Boolean | false | 组件是否禁用 | false, true |
stop | Boolean | false | 是否阻止事件冒泡(Tui统一写法处理事件冒泡) | false, true |
hover | Boolean | true | 是否有点击效果 | false, true |
path | String | "" | 点击组件后跳转的页面路径,如果为空则响应点击事件,如果不为空则跳转页面不会响应单击事件。 | - |
mainClass | String | "" | 组件根节点的样式 | - |
nativeClass | String | "" | 组件根节点原生样式 | - |
effect | String | "normal" | 组件显示主题 | normal(正常), dark(深色), light(浅色), plain(镂空) |
transition | Boolean | false | 是否支持动画 | |
duration | Number | 200 | 动画时间 | |
icon | String | check-fill | 图标 | |
activeClass | String | `` | 选中时的组件的样式 | |
iconClass | String | `` | 图标样式 | |
inactiveIconClass | String | `` | 未选中时图标的样式 | |
inactiveLabelClass | String | `` | 未选中时文本的样式 | |
modelValue | String | `` | 双向绑定的值 | |
childClass | String | `` | 统一设置子元素样式 | |
labelClass | String | `` | 显示文本样式 | |
iconBoxClass | String | `` | 图标容器样式 | |
inactiveClass | String | `` | 未选中时的组件的样式 | |
activeIconClass | String | `` | 选中时图标的样式 | |
activeLabelClass | String | `` | 选中时文本的样式 | |
mode | String | radio | 显示模式 | button : 按钮样式radio : 单选框模式cell : 列表模式 |
border | Boolean | true | 是否显示边框 |
事件
名称 | 返回参数 | 说明 |
---|---|---|
change | - | 选中状态化生变化时触发 |
插槽
名称 | 返回值 | 说明 |
---|---|---|
default | - |