element表单校验validate回调不执行问题。

今天使用element的表单实现通知人的添加,有做对通知人的手机号和有想等做表单校验。
布局如图:
在这里插入图片描述
我在提交时做使用表单的validate方法对表单再次校验,因为输入框校验是要有输入框的事件触发,如果不对输入框做输入就不会触发校验,提交时就会提交空白内容的数据,所以提交前再次做校验,判断输入框的内容是否符合要求后在提交。

但是出现表单校验通过时validate回调没有执行问题,查阅代码发现是在校验手机号时没有执行callback回调。

// 修改前
const validateTel = (rule, value, callback) => {
    
    
    if (!value) {
    
    
        callback(new Error('请输入手机号'))
    } else {
    
    
        if (!regular.phone.pattern.test(value)) {
    
    
            callback(new Error('请输入正确的手机号'))
        }
    }
}
// 修改后
const validateTel = (rule, value, callback) => {
    
    
    if (!value) {
    
    
        callback(new Error('请输入手机号'))
    } else {
    
    
        if (!regular.phone.pattern.test(value)) {
    
    
            callback(new Error('请输入正确的手机号'))
        } else {
    
    
            callback()
        }
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_44801790/article/details/126890072