使用el-form如何验证数组对象内的元素值不能为空
时间: 2023-05-13 09:06:29 浏览: 458
element form 校验数组每一项实例代码
您可以使用 el-form 的 rules 属性来验证数组对象内的元素值不能为空。具体实现方式如下:
1. 在 el-form 中定义一个 rules 对象,用于存储验证规则。
2. 在 rules 对象中定义一个 validator 函数,用于验证数组对象内的元素值是否为空。
3. 在 validator 函数中,使用 forEach 方法遍历数组对象,判断每个元素的值是否为空。
4. 如果有元素的值为空,则返回一个错误信息,否则返回 true。
以下是示例代码:
<template>
<el-form :model="form" :rules="rules">
<el-form-item label="数组对象">
<el-input v-model="form.array[0].value"></el-input>
<el-input v-model="form.array[1].value"></el-input>
</el-form-item>
</el-form>
</template>
<script>
export default {
data() {
return {
form: {
array: [
{ value: '' },
{ value: '' }
]
},
rules: {
array: [
{ validator: this.validateArray, trigger: 'blur' }
]
}
}
},
methods: {
validateArray(rule, value, callback) {
let isEmpty = false;
value.forEach(item => {
if (!item.value) {
isEmpty = true;
}
});
if (isEmpty) {
callback(new Error('数组对象内的元素值不能为空'));
} else {
callback();
}
}
}
}
</script>
阅读全文