<el-form-item label="巡检人员" :label-width="formLabelWidth" prop="inspectionName">
<el-select v-model="personInfo" placeholder="请选择巡检人员" multiple @change="getValue()">
<el-option v-for="item in xunPerson" :key="item.id" :label="item.username" :value="item.id"></el-option>
</el-select>
</el-form-item>
data数据
data () {
return {
upform: {},//传参对象
xunPerson: [],//遍历option数组
personInfo: []//新建往里面push的数组
}
},
multiple多选
@change="getValue()" 选择后触发事件
getValue () {
const newPerson = []
this.xunPerson.forEach(item => {
if (this.personInfo.indexOf(item.id) != -1) {
newPerson.push({
id: item.id,
username: item.username
})
}
})
this.upform.inspectionName = JSON.stringify(newPerson)
},
新定义一个数组
遍历option项取出item
如果不等于-1就代表存在,存在的话添加到新定义的数组中
最后赋值给v-model绑定的数据中
项目中遇到的问题,描述的不细地方,多多指正互相学习,谢谢!