由于el-form是循环的,所以他的ref也是循环的,那么每一个表单要想验证,则可采用以下办法
传入你所需要验证的表单ref,调用此函数就可获得是否所有循环的表单都验证成功了
export const validateMultipleForm = async(formEl: FormInstance[] | undefined) => {
if (!formEl) return
formEl = formEl.filter(obj => obj !== null)
const validationPromises = formEl.map((element) => {
return new Promise((resolve) => {
if (element) {
element.validate((isValid) => {
resolve(isValid);
})
} else {
resolve(false)
}
})
})
const formValid = (await Promise.all(validationPromises)).every((valid) => valid);
return formValid
}