在使用element表单校验validateField的时候 控制台报错
这个错误的根本原因就是使用validateField传入fields与实际表单的不一致。
但是造成这个原因的原因是多样的,大多时候都是粗心导致的不一致(前几次我都是,但是这次!我检查了好几遍 肯定是一样的!)
但是但是 被打脸了
这次我写了一些表单项的prop是绑定的 ,像这样、
:prop="baseInfo.capabilityLevel == '1'?'coverage':''"
不知道为什么虽然从表面来看 表单确实已经绑定上了校验(显示了必填星号),
但是打印this.$refs.formname发现里面没有 —— 问题就出在这里
解决
给这些prop为绑定的表单项上再绑一个key值,像这样,然后就好啦~~
<el-form-item :prop="baseInfo.capabilityLevel == '1'?'coverage':''"
:key="'coverage'+baseInfo.capabilityLevel" label="覆盖范围:">
<el-input v-model="form2.coverage"/>
</el-form-item>