问题:当el-select的绑定值为对象时,回显时只能赋值字符串,不能赋值对象;赋值对象后不显示,代码如下:
字段定义:
updateSchoolMod:{},
回显方法中赋值:
this.updateSchoolMod.id = row.schoolId; this.updateSchoolMod.schoolName = row.schoolName;
<el-form-item label="学校"> <el-select value-key="id" v-model="updateSchoolMod" placeholder="请选择学校" style="min-width: 100%;" filterable clearable @change="getUserList"> <el-option v-for="item in schoolList" :key="item.id" :label="item.schoolName" :value="item.id"> </el-option> </el-select> </el-form-item>
正确写法:
<el-form-item label="学校"> <el-select value-key="id" v-model="updateSchoolMod" placeholder="请选择学校" style="min-width: 100%;" filterable clearable @change="getUserList"> <el-option v-for="item in schoolList" :key="item.id" :label="item.schoolName" :value="item"> </el-option> </el-select> </el-form-item>
错误原因如下图::value="item"
,不能写成:value="item.id"
:
分析:绑定的默认值为 value,即value需为对象,如果是id,则为字符串