el-form-item v-for 校验失效
时间: 2023-02-08 13:20:17 浏览: 119
在使用 v-for 渲染 el-form-item 时,需要给每个 el-form-item 添加一个唯一的 key 值,这样才能正确地校验每个 el-form-item。如果不添加 key 值,那么校验会失效。
例如:
```
<el-form-item v-for="(item, index) in items" :key="index" :label="item.label" :prop="item.prop">
<el-input v-model="item.value"></el-input>
</el-form-item>
```
这里我们用了 index 作为 key,也可以用 item.id 等其他唯一值。
相关问题
el-form-item v-for :rules 校验失效
在使用v-for循环渲染el-form-item时,需要注意:rules的值应该是一个函数,而不是一个静态的数组。这样可以确保每一项都有自己独立的校验规则。
例如:
```
<el-form-item v-for="(item, index) in items" :key="index" :rules="getRules(index)">
```
```
methods: {
getRules(index) {
return [
{ required: true, message: '请输入内容' },
{ min: 5, message: '最少输入5个字符' },
]
}
}
```
这样就可以避免出现校验失效的情况。
使用v-for循环渲染el-form-item是校验失效
使用 Vue 的 v-for 循环渲染 el-form-item 时,由于每个 el-form-item 的 key 值都相同,导致校验失效。解决方法是为每个 el-form-item 设置不同的 key 值,例如使用循环变量的索引。
```
<el-form-item v-for="(item, index) in items" :key="index">
...
</el-form-item>
```
这样就会为每个 el-form-item 设置一个唯一的 key 值,校验就可以正常工作了。
阅读全文