el-checkbox复选框做单选

思路:(所有选择项都在一个数组中)给每一个选项设置一个是否选中的属性(checked),通过change事件来改变,数组中每一项的checked,如果change事件的值是true,那么就要把数组中(如根据唯一值:id)不等于当前选择项且checked为true的要变为false,一般的,@change事件回调参数是更新后的值,这里我们需要知道当前变化的是哪一项所有@change事件要这么写:@change=“handleChange($event, item)”

具体代码:

          <el-checkbox
            v-for="(item, index) in options"
            :key="item.id"
            class="check-box-item"
            :class="{'active': item.checked}"
            v-model="item.checked"
            :label="item.name"
            border
            @change="handleChange($event, item)"
          ></el-checkbox>

js部分:

options = [{name:'选项1', id:1,checked: false}{name:'选项2', id:2,checked: false}{name:'选项3', id:3,checked: false}{name:'选项4', id:4,checked: false}];
  handleChange(value, item) {
    if (value) {
      this.activeItem = item;
      this.insuranceTypeList.forEach((el: any) => {
        if (el.id !== item.id && el.checked) {
          el.checked = false;
        }
      });
    }
  }
  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值