Skip to content
# t-checkbox-group

CheckboxGroup 多选框组

t-checkbox-group 组件介绍 ​

t-checkbox-group 是一个复选框组组件,用于管理多个 t-checkbox 组件的选择状态,支持布局方向(横向或纵向)和不同的显示模式(checkbox、button、cell)。组件提供了统一的样式配置和事件处理,适用于需要多选功能的表单场景。

t-checkbox-group 平台兼容 ​

HarmonyH5AndroidiOS小程序UTS
✅✅✅✅✅✅

t-checkbox-group 基础用法 ​

基础用法参考 demo/checkbox-group/checkbox-group.uvue,通过 v-model 绑定选中值,在插槽中放置 t-checkbox 组件。

vue
<template>
	<view class="p-15">
		<tui-theme-switch></tui-theme-switch>
		<t-card title="RadioGroup 多选框组"
				class="mb-15"
				sub-title="支持布局方向(横向或纵向)。不同的显示模式(radio、button、cell)丰富主题配置"></t-card>
		<t-card title="亮点"
				class="mb-15"
				title-class="c-red"
				sub-title="支持任意子组件参与布局,支持父组件统一设置子组件属性,让代码更简洁【父组件拥有子组件所有属性,子组件和父组件同时设置相同属性,子组件属性优先级高于父组件】"
				sub-title-class="c-red"></t-card>
		<t-checkbox-group :class="[`tvg ${radio_mode=='cell'?'fv':'fl'} r-10 fww p-10 mb-15`]"
						  :size="radio_size"
						  v-model="radio"
						  :type="radio_type"
						  :mode="radio_mode"
						  @change="checkboxchange"
						  child-class="mrb-15"
						  :transition="false">
			<t-checkbox value="1">苹果</t-checkbox>
			<t-checkbox value="2">香蕉</t-checkbox>
			<t-checkbox value="3">橙子</t-checkbox>
			<t-checkbox value="4">石榴</t-checkbox>
			<t-checkbox value="99"
						:border="false">梨子</t-checkbox>
		</t-checkbox-group>
		<t-button class="mb-15"
				  type="primary"
				  @click="test">赋值{{radio_size}}</t-button>
		<t-group title="显示类型:"
				 class="mb-15">
			<t-radio-group class="f fl fww r-10"
						   v-model="radio_mode"
						   type="primary">
				<t-radio value="checkbox">checkbox</t-radio>
				<t-radio value="button">button</t-radio>
				<t-radio value="cell">cell</t-radio>
			</t-radio-group>
		</t-group>
		<view :class="[`fl trm faic p-10 mb-15 tvg`]">
			<t-text class="mr-5">主题:</t-text>
			<t-radio-group class="f fl fww r-10"
						   v-model="radio_type"
						   type="primary">
				<t-radio value="">默认</t-radio>
				<t-radio value="primary">主要</t-radio>
				<t-radio value="success">成功</t-radio>
				<t-radio value="info">信息</t-radio>
				<t-radio value="warning">警告</t-radio>
				<t-radio value="error">危险</t-radio>
			</t-radio-group>
		</view>
		<view :class="[`tvg trm fl faic p-10 mb-15`]">
			<t-text class="mr-5">尺寸:</t-text>
			<t-radio-group :class="[`f fl fww r-10`]"
						   v-model="radio_size"
						   type="primary">
				<t-radio value="large">large</t-radio>
				<t-radio value="medium">medium</t-radio>
				<t-radio value="small">small</t-radio>
				<t-radio value="mini">mini</t-radio>
			</t-radio-group>
		</view>
	</view>
</template>

<script setup>
	const radio = ref<string[]>(['1', '99'])
	const radio_type = ref<string>('success')
	const radio_mode = ref<string>('checkbox')
	const radio_size = ref<string>('medium')

	const type = ref<string>('success')
	function test() {
		//赋值方式更新
		radio.value = ['1', '99', '2']
		//实际应用push请先判断是否存在,内部没做处理
		//radio.value.push('2')
	}
	function checkboxchange(values : string[]) {
		console.log(values)
	}
</script>

t-checkbox-group Props ​

属性名说明类型默认值
path点击组件后跳转的页面路径;为空时仅响应事件string''
hover是否启用点击效果booleanfalse
type组件主题类型,可选 info、primary、error、warning、successstring'primary'
disabled是否禁用booleanfalse
effect组件显示主题,可选 normal、dark、light、plainstring'normal'
size组件尺寸,可选 large、medium、small、ministring'medium'
modelValue绑定的选中值string[][]
childClass统一设置子元素的样式string''
transition统一设置子元素选择时是否开启动画booleanfalse
duration统一设置动画时间number200
labelClass统一设置子组件标签样式string''
icon统一设置选中状态的图标string'check-fill'
iconBoxClass统一设置子组件图标的盒子的样式string''
activeClass统一设置子组件被选中时的样式string''
inactiveClass统一设置子组件未选中时的样式string''
iconClass统一设置图标样式string''
activeIconClass统一设置选中时图标的样式string''
inactiveIconClass统一设置子组件图标未选中时的样式string''
activeLabelClass统一设置子组件标签选中时的样式string''
inactiveLabelClass统一设置子组件未选中时标签的样式string''
mode统一设置子组件的显示模式,可选 checkbox、button、cellstring'checkbox'
border是否显示边框booleantrue

t-checkbox-group Events ​

事件名说明回调参数
change选中内容发生变化时触发string[]
update:modelValue绑定值变化时触发string[]
click点击时触发UniPointerEvent
initFinished组件初始化完成时触发,返回组件节点信息NodeInfo
touchstart触摸开始时触发-
touchend触摸结束时触发-
touchmove触摸移动时触发-
touchcancel触摸取消时触发-
transitionend动画结束时触发-

t-checkbox-group Slots ​

插槽名说明
default默认插槽,用于放置 t-checkbox 组件