el-radio单选框,取消选中

1.背景:在公司开发需求中有一个选择颜色的单选框(黑色,白色),每种颜色选择后均支持取消选中,可是el-radio标签不支持取消选中。

2.解决:

方法1:

复制代码
<el-radio-group v-model="radioColor">
    <el-radio :label="'black'" @click.native.prevent="clickitemdataType('black')">黑色</el-radio>
    <el-radio :label="'white'" @click.native.prevent="clickitemdataType('white')">白色</el-radio>
</el-radio-group>

 clickitemdataType (e) { // e为radio的label值
      e === this.radioColor ? this.radioColor = '' : this.radioColor = e
 },

方法2:换checkbox,设置max=1即可

复制代码
<el-checkbox-group v-model="checkList" :max="1">
    <el-checkbox label="A"></el-checkbox>
    <el-checkbox label="B"></el-checkbox>
</el-checkbox-group>
 
data () {
    return {
        checkList: ['A']
    }
}

但是用第一个方法会导致样式错乱,需要在css中加入

复制代码
/deep/ .el-radio:focus:not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner {
box-shadow: 0 0 2px 2px #fff !important;
}

这样就会好了!

相关推荐
无糖可可果7 小时前
从零读懂一个 Next.js 全栈笔记应用
前端
Maxkim7 小时前
DeepSeek Harness 源码深度分析:像 VS Code 一样插件化的 Agent 框架
前端·架构
xiaominlaopodaren7 小时前
three.js地图数学基础(八):浮点精度
javascript·gis·three.js
喜欢睡觉7 小时前
从零看懂一个 Next.js 笔记应用
前端
SendTomo7 小时前
跨设备文件互传新方案
javascript·网络·webrtc·html5·p2p
cindershade7 小时前
从零实现画布「双击创建节点」:一个 VueFlow 项目的交互全记录
前端
YHL7 小时前
🚀 SSE 服务器发送事件与 BFF 层实战
前端·后端
今日无bug7 小时前
HTML5 Canvas:从画图到游戏开发
前端·canvas
cindershade7 小时前
用 Web Workers 优化前端重计算任务:避免主线程卡顿的实战方案
前端
爱丶不疚7 小时前
搞不清 CommonJS 与 ESM,你是否也有这些疑问🤔
前端·node.js