<el-form-item
v-for="(item, index) in maintenanceForm.docTypeList"
:key="index"
:label="$i18n.locale === 'zh-CN' ? item.docTypeCName : item.docTypeEName"
required
class="d2-mb-0"
>
<el-form-item
class="d2-mr-0"
:prop="'docTypeList.' + index + '.strVal'"
:rules="{ required: true, message: `请输入${$i18n.locale === 'zh-CN' ? item.docTypeCName : item.docTypeEName}`, trigger: 'blur' }"
>
<div class="form-item-contain">
<el-input
v-model="item.strVal"
:placeholder="`请输入${$i18n.locale === 'zh-CN' ? item.docTypeCName : item.docTypeEName}编码`"
class="d2-mr"
style="width: 178px"
@input="change($event, index)"
></el-input>
</div>
</el-form-item>
</el-form-item>
el-input 是v-for渲染的,而且嵌套比较深.输入的时候,发现输入不了,而且无法删除,打印的时候也是获取不到当前输入值,后经查询,发现使用vue的强制更新可以起作用.
change(e, index) {
this.maintenanceForm.docTypeList[index].strVal = e
this.$forceUpdate()
}