标签说明:

radio-group:单项选择器,内部由多个 <radio> 组成。通过把多个radio包裹在一个radio-group下,实现这些radio的单选。

radio:单选项目

属性说明:

@change:<radio-group> 标签中的radio选中项发生变化时触发 change 事件,event.detail = {value: 选中项radio的value}

value:<radio> 标识。当该 <radio> 选中时,<radio-group> 的 change 事件会携带 <radio> 的 value

checked:当前是否选中,默认值false,类型是布尔值

disabled:是否禁用,默认值是false,类型是布尔值

color:radio的颜色,同css的color

注意

  • radio的默认颜色,在不同平台不一样。微信小程序是绿色的,字节跳动小程序为红色,其他平台是蓝色的。更改颜色使用color属性。
  • 如需调节radio大小,可通过css的scale方法调节,如缩小到70%style="transform:scale(0.7)"
  • radio不是checkbox,点击一个已经选中的radio,不会将其取消选中

上代码:

<!-- uniapp单选框 -->
		<view class="">
			<radio-group @change="chang">
				<label v-for="item in radioGroup" :key="item">
					<radio :value="item" :checked="item==activeRadio" />{{item}}
				</label>
			</radio-group>
		</view>
<script>
      export default {
		data() {
			return {
				// 单选框数据
				activeRadio: '', //存的是单选按钮选中的value值
				radioGroup: ['苹果', '香蕉', '梨', '西红柿', '西瓜']
			}
		},
        methods: {
                // 单选按钮发生改变时触发的方法
			chang(e) {
				this.activeRadio = e.detail.value;  //选中按钮的value值
				console.log(this.activeRadio);
			}
}
</script>

打印结果:

1.获取选中按钮的value值,e.detail.value,赋值给data中activeRadio声明的变量

uniapp中单选按钮的实现

2.打印选中按钮的值

uniapp中单选按钮的实现

uniapp中单选按钮的实现

实际场景案例,男女单选框

<radio-group @change="radioChange" class="value checked" style="font-size: 13px;">
	<label class="radio">
		<radio style="zoom: 0.8;" :color="roleColor" value="1" :checked="sex == '1'" />男
	</label>
	<label class="radio" style="margin-left: 15%;">
	    <radio style="zoom: 0.8;" :color="roleColor" value="2" :checked="sex == '2'" />女
	</label>
</radio-group>
<script>
    export default {
		data() {
			return {
				// 单选框数据
				sex: "", //存的是单选按钮选中的value值,性别值
			}
		},
        methods: {
            radioChange(evt) {
				// console.log(evt);
				this.sex = evt.detail.value;
			},
}
</script>

效果图:

uniapp中单选按钮的实现

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。