在添加了表单校验后,提交表单时,我们使用 validate 方法进行表单校验,代码如下:
submitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
alert('submit!');
} else {
console.log('error submit!!');
return false;
}
});
},
我们可以看到 validate 方法是对整个表单进行校验的方法,参数未一个回调函数。该回调函数会在校验结束后被调用,并且传入两个参数:是否校验成功和未通过校验的字段。若不传入回调函数,则会返回一个 promise。
// valid 为是否校验成功,obj 为未通过校验的字段
this.$refs[formName].validate((valid, obj) => {
if (valid) {
alert('submit!');
} else {
console.log('error submit!!', obj);
for (let key in obj) {
// 提示信息: obj[key][0].message
return false;
}
}
});