先上一个例子
<template>
<el-checkbox-group
v-model="checkedCities"
:min="1"
:max="2">
<el-checkbox v-for="city in cities" :label="city" :key="city">{{city}}</el-checkbox>
</el-checkbox-group>
</template>
<script>
const cityOptions = ['上海', '北京', '广州', '深圳'];
export default {
data() {
return {
checkedCities: ['上海', '北京'],
cities: cityOptions
};
}
};
</script>
1.这种选择数组只是单元素而不是object的时候,直接让绑定的model和循环的集合对应就可以达到复选框回显
2.复选框数组里面是对象时,复选框回显方法
<el-checkbox-group v-model="formData.field101" size="medium" @change="handleChecked()">
<el-checkbox
v-for="(item, index) in field101Options"
:key="index"
:label="item.id"
>{{ item.value}}</el-checkbox
>
</el-checkbox-group>
field101Options的数据结构是
field101Options: [
{
value: "选项一",
id: 1,
},
{
value: "选项二",
id: 2,
},
],
解决方法很简单,让你的model里面的数据结构等于
formData: {
field101: [
{
value: "选项一",
id: 1,
},
1,
{
value: "选项二",
id: 2,
},
1
],
},
就可以达到回显效果,一定要在每个选择对象外面加上该条对象里面的id值