我是因为v-model绑定的不是后台返回的字段里面的任意一个,是自己拿到数据时手动添加的一个字段(循环遍历添加一个字段 如:item.xxx = aaa)因此绑定xxx回显时无法编辑更改,需要用到this.$set() 来替代遍历的 item.xxx = aaa ,格式:
//数据库返回的字段:
/*这里只做演示
data = {
fieldCode:"name",
fieldName:"患者姓名",
matchingType:"String",
num:2
}
/*
//实际需要的字段
/*
{
fieldCode:"name",
fieldName:"患者姓名",
matchingType:"String",
matchingValueArray:[{
value:'123',//这是循环绑定值
},{
value:'test'
}]
}
*/
const matchingValueArray = []
for(let i = 0;i < num; i++){
matchingValueArray.push({ value: valueSplit[i] })
}
// this.$set(obj,key,value),key记得加引号,是字符串
this.$set(data, 'matchingValueArray', matchingValueArray)
搞定!