表单校验validate、validateField通过时不执行相关代码问题,只有校验不通过才执行

表单校验validate、validateField通过时不执行相关代码问题,只有校验不通过才执行

1.问题分析

问题的原因可能是【自定义校验没有对成功进行callback()】,如下:
在这里插入图片描述

2.解决方法

解决方法就是【对与通过校验的情况,执行一个callback()】,如下:

  var confirmPwd = (rule, value, callback) => {
    
    
      if (value !== this.ruleForm.password) {
    
    
        callback(new Error("两次输入的密码不一致"));
      } else {
    
    
        callback();
      }
    };
    var confirmPhone = (rule, value, callback) => {
    
    
      if (!/^1[3456789]\d{9}$/.test(value)) {
    
    
        callback(new Error("手机号不合法"));
      } else {
    
    
        callback();
      }
    };

猜你喜欢

转载自blog.csdn.net/Kindergarten_Sir/article/details/109031437
今日推荐