elementui中如何区分el-radio-group的是点击触发的改变还是赋值触发的改变
在Element UI中,el-radio-group组件的值改变可以通过两种方式触发:点击触发和赋值触发。
- 点击触发方式:当用户点击el-radio-group中的选项时,会触发change事件,通过监听change事件可以判断值的改变是由点击触发的。示例代码如下:
<template>
<el-radio-group v-model="radioValue" @change="handleRadioChange">
<el-radio :label="1">Option 1</el-radio>
<el-radio :label="2">Option 2</el-radio>
</el-radio-group>
</template>
<script>
export default {
data() {
return {
radioValue: 1
};
},
methods: {
handleRadioChange(val) {
console.log("值改变了,是由点击触发的");
console.log("新的值为:" + val);
}
}
};
</script>
- 赋值触发方式:当通过代码动态修改el-radio-group的值时,不会触发change事件,可以通过watch监听值的改变,判断是通过赋值触发的。示例代码如下:
<template>
<el-radio-group v-model="radioValue">
<el-radio :label="1">Option 1</el-radio>
<el-radio :label="2">Option 2</el-radio>
</el-radio-group>
<button @click="changeValue">改变值</button>
</template>
<script>
export default {
data() {
return {
radioValue: 1
};
},
methods: {
changeValue() {
this.radioValue = 2;
}
},
watch: {
radioValue(val) {
console.log("值改变了,是通过赋值触发的");
console.log("新的值为:" + val);
}
}
};
</script>
通过监听change事件和watch可以区分el-radio-group的值改变是由点击触发的还是赋值触发的
原文地址: https://www.cveoy.top/t/topic/iQ23 著作权归作者所有。请勿转载和采集!