通过添加key值来告诉diff算法,我的页面发生了变化
- 表单校验时而不生效
//item.canInvoiceType后台返回动态的,随园区变化
let arr = item.canInvoiceType.split(',');
this.invoiceType.forEach(valid => { //this.invoiceType统一发票类型字典
if (arr.includes(valid.value)) {
this.invoiceList.push(valid)
//this.invoiceList页面选择框字典会变化,引起表单校验时而不生效,在其对应表单项增加key值
}
})
- 表单数值回显错行
- 类似表单项:v-model绑定值相像,如parkId和parkIds??
- el-select选项,数组名或者数组值相像??
- el-option的标签label,值value字段一样??
<el-form-item
v-if="!baseForm.contractType||baseForm.contractType=='01'"
label="签约园区:"
prop="parkId"
key="parkId" //多个类似表单项,经常切换显示,可能造成数值回显错行
>
<el-select
v-model="baseForm.parkId"
multiple
:multiple-limit="5"
>
<el-option
v-for="(item, index) in parkSignList"
:key="index"
:label="item.parkName"
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>