CommonRadio.vue

 <template>
<div>
<el-checkbox-group v-model="checkList" @change="handleChange">
<el-checkbox :label="item[keyId]" v-for="item in list" :key="item">{{item[label]}}</el-checkbox>
</el-checkbox-group>
</div>
</template> <script>
export default {
props: {
value: [String, Array],
list: {
type: Array,
default () {
return [];
}
},
keyId: {
type: String,
default: 'value',
},
label: {
type: String,
default: 'label'
},
},
data() {
return {
checkList: [],
}
},
watch: {
value: {
immediate: true,
handler(val) {
this.checkList = [ val ];
}
}
}, methods: {
handleChange(arr) {
this.checkList.length > 1 && this.checkList.shift(); this.$nextTick(() => {
let val = this.checkList.length > 0 ? this.checkList[0] : '';
this.$emit('change', val);
this.$emit('input', val);
})
}
},
}
</script> 调用 <div class="associated-list">
<template v-for="(item, index) in associatedList">
<el-form-item :label="item.name" :key="item" v-if=" (maxSize !== null ? index < maxSize : true)">
<CommonRadio v-model="associated[`tags_${item.id}`]" :list="item.tags" :keyId="`id`" :label="`name`"></CommonRadio>
</el-form-item>
</template> <div class="get-more">
<el-button type="text" @click="showMore" v-if="maxSize !== null && associatedList.length > 3">更多行为标签&gt;&gt;</el-button>
</div>
</div>

vue + elementui 使用多选按钮实现单选功能的更多相关文章

  1. vue Element-ui 表格多选 修改选中行背景色

    实现的效果: 整体思路方式: 1.给获取到的数据添加自定义的className 2.在点击行(row-click)和手动点击勾选框的事件(select-all)中获取到当前的row的className ...

  2. checkbox多选按钮变成单选

    <input id="a" type="checkbox"/><input id="b" type="check ...

  3. elementui禁用全选按钮

     document.getElementsByClassName('el-checkbox__input')[0].classList.add('is-disabled')           doc ...

  4. layui 数据表格复选框实现单选功能

    //点击选中(单选)//单击行勾选checkbox事件 $(document).on("click",".layui-table-body table.layui-tab ...

  5. vue+element-ui 项目中实现复制文字链接功能

    需求: 点击复制按钮,复制一个链接 在GitHub上找到一个clipboard组件,功能比较齐全 使用方法:   安装 npm i clipboard --save HTML <template ...

  6. DataGridView复选框实现单选功能(二)

    双击DataGridView进入事件 private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventA ...

  7. vue+elementUI实现 分页表格的单选或者多选、及禁止部分选择

    一.vue+elementUI实现 分页表格前的多选 多选效果图: 代码如下: <el-table ref="multipleTable" :data="listD ...

  8. iView的tree组件实现单选功能

    iView中的树组件有复选框可以多选,但是目前还没有提供单选框的模式,不显示复选框可以提供高亮单选的模式,但是再次点击就被取消了,没有实现真正的单选: tree 的属性配置中 multiple 是否支 ...

  9. vue+element-ui实现表格checkbox单选

    公司平台利用vue+elementui搭建前端页面,因为本人第一次使用vue也遇到了不少坑,因为我要实现的效果如下图所示 实现这种单选框,只能选择一个,但element-ui展示的是多选框,check ...

随机推荐

  1. mysql事务回滚机制概述

    应用场景:   银行取钱,从ATM机取钱,分为以下几个步骤       1 登陆ATM机,输入密码:    2 连接数据库,验证密码:    3 验证成功,获得用户信息,比如存款余额等:    4 用 ...

  2. Android ADB常用命令使用

    Android SDK: adb shell 命令的使用(am.pm.wm.screencap.monkey等) https://blog.csdn.net/xietansheng/article/d ...

  3. 本机安装了oracle,本机还需要安装客户端吗?

    转: 本机安装了oracle,本机还需要安装客户端吗? 2017-09-21 15:56:29 Ideality_hunter 阅读数 4681   版权声明:本文为博主原创文章,遵循CC 4.0 B ...

  4. Java的方法类型

    1.无参数无返回值的方法 package com.imooc.method; public class MethodDemo { public static void printStar() { Sy ...

  5. RSA签名,加解密处理核心文件

    import java.io.ByteArrayOutputStream; import java.io.UnsupportedEncodingException; import java.secur ...

  6. (三)用CONCAT 函数 拼接字段

    一.将两个列拼接成一个列 数据源 select CONCAT(TRIM(username),'(',locaiton,')') from user2 解释: TRIM()函数用于去除字符串左右两边的空 ...

  7. [LeetCode] 507. Perfect Number 完美数字

    We define the Perfect Number is a positive integer that is equal to the sum of all its positive divi ...

  8. 思维导图Xmind8

    Xmind——一款强大的思维导图工具,方便记忆和理清思路,同时思维导图特殊的记录方式也便于捕捉跳跃思考. 五款思维导图软件:MindManager.iMindMap.XMind.MindMapper. ...

  9. python实践项目十:zipfile模块-将一个文件夹备份到一个 ZIP 文件

    描述:将指定路径下的某文件夹备份到一个zip文件 代码: #!/usr/bin/python # -*- coding: UTF-8 -*- # backupToZip - Copies an ent ...

  10. 【LeetCode】四数之和【排序,固定k1,k2,二分寻找k3和k4】

    给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满 ...