Skip to content

CheckboxGroup (复选框组)

支持布局方向(横向或纵向)。不同的显示模式(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-checkbox-group :main-class="`${radio_mode=='cell'?'fv':'fl'} tdr tdb fww tdp mb-30`" :size="radio_size"
			v-model="radio" :type="radio_type" icon="checkbox-blank-circle-fill" :mode="radio_mode" child-class="mrb-30"
			icon-class="ats-0.5" :transition="false">
			<t-checkbox-item value="1">苹果</t-checkbox-item>
			<t-checkbox-item value="2">香蕉</t-checkbox-item>
			<t-checkbox-item value="3">橙子</t-checkbox-item>
			<t-checkbox-item value="4">石榴</t-checkbox-item>
			<t-checkbox-item value="99" :border="false">梨子</t-checkbox-item>
		</t-checkbox-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" v-model="radio_mode" icon="checkbox-blank-circle-fill" type="p"
				icon-class="ats-0.5">
				<t-radio-item value="checkbox">checkbox</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', '99'])
	const radio_type = ref<string>('s')
	const radio_mode = ref<string>('checkbox')
	const radio_size = ref<string>('medium')

	const type = ref<string>('s')
	function test() {
		radio.value = ['2', '3', '4']
	}
	function checkboxchange(values : string[]) {
		console.log(values)
	}
</script>

属性

名称类型默认值说明可选值
sizeStringmini组件尺寸large(大尺寸), medium(中尺寸), small(小尺寸), mini(迷你)
typeString""组件类型info(信息), primary(正常), error(错误), warning(警告), success(成功)
disabledBooleanfalse组件是否禁用false, true
stopBooleanfalse是否阻止事件冒泡(Tui统一写法处理事件冒泡)false, true
hoverBooleantrue是否有点击效果false, true
pathString""点击组件后跳转的页面路径,如果为空则响应点击事件,如果不为空则跳转页面不会响应单击事件。-
mainClassString""组件根节点的样式-
nativeClassString""组件根节点原生样式-
effectString"normal"组件显示主题normal(正常), dark(深色), light(浅色), plain(镂空)
modelValueany``组件的值
transitionBooleanfalse统一设置子元素选择时是否开启动画,优先级低于子组件
durationNumber200统一设置动画时间,优先级低于子组件
iconStringcheck-fill统一设置选中状态的图标 优先级低于子组件
activeClassString``统一设置子组件被选中是的样式 如子组件也设置了样式。则合并样式。后来居上原则。
iconClassString``统一设置图标样式 如子组件也设置了样式。则合并样式。后来居上原则。
inactiveIconClassString``统一设置子组件图标未选中时的样式 如子组件也设置了样式。则合并样式。后来居上原则。
inactiveLabelClassString``统一设置子组件未选中是标签的样式 如子组件也设置了样式。则合并样式。后来居上原则。
childClassString``统一设置子元素的样式,如果子组件也设置了main-class则会合并样式。后设置的样式覆盖前者样式
iconBoxClassString``统一设置子组件图标的盒子的样式,如子组件也设置了样式。则合并样式。后来居上原则。
inactiveClassString``统一设置子组件未选中时的样式 如子组件也设置了样式。则合并样式。后来居上原则。
activeIconClassString``统一设置选中时图标的样式 如子组件也设置了样式。则合并样式。后来居上原则。
activeLabelClassString``统一设置子组件lable选中时的标签样式 如子组件也设置了样式。则合并样式。后来居上原则。
modeStringcheckbox统一设置子组件的显示模式 优先级低于子组件checkbox: 复选框样式
button: 按钮模式
cell: 列表模式
borderBooleantrue
labelClassString``统一设置子组件标签样式。如子组件也设置了样式。则合并样式。后来居上原则。

事件

名称返回参数说明
change选中的值 string[]选中内容发生变化时触发

插槽

名称返回值说明
default-