el-radio

1.ElementUI中el-radio再次点击取消选中

  • 不使用change,当radio已被选中时,@change事件不会被触发
<el-radio-group v-model="radio2">
  <el-radio @click.native.prevent="clickitem(3)" :label="3"> 备选项</el-radio>
  <el-radio @click.native.prevent="clickitem(6)" :label="6"> 备选项</el-radio>
  <el-radio @click.native.prevent="clickitem(9)" :label="9"> 备选项</el-radio>
</el-radio-group>

clickitem (e) {
  e === this.radio2 ? this.radio2 = '' : this.radio2 = e
},

2. el-radio 点击执行两次

  • 我直接使用@click.native.prevent.stop也没复现这个问题,如果有可参考下面方式
  • el-radio被封装多层,根元素不是input,
    我认为是由于事件冒泡机制导致的,因为根元素是label,click事件绑定到了label上。
    因为点击label的时候,事件冒泡一次,同时会触发关联的input的change事件,导致事再次触发事件。
 <el-radio-group v-model="radio" @click.native="SkipProgress($event)">
    <el-radio :label="3">备选项</el-radio>
    <el-radio :label="6">备选项</el-radio>
    <el-radio :label="9">备选项</el-radio>
  </el-radio-group>


	methods:{
		Skipprogress(e){
			if (e.target.tagName === 'INPUT') return;
		}
	}

3. el-radio 点击时候有模糊边缘样式

el-radio_第1张图片

.el-radio:focus:not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner {
  outline: none; /* 移除默认的聚焦轮廓 */
  box-shadow: none; /* 移除可能的阴影 */
}

你可能感兴趣的:(elementui,vue.js)