el-form自定义校验规则后表单验证validate不生效导致代码跑不起了人快跑了

一:先说结论:自定义校验规则需要将所有的可能都得return callback出去,要不然不会走validate

二:举例子:

全部正确代码在下方:






2.1正确示范:

我们关注这个checkName方法,在最后的时候有else{callback()},此时是可以正常操作的

el-form自定义校验规则后表单验证validate不生效导致代码跑不起了人快跑了_第1张图片

 可以校验,也可以正常执行方法

el-form自定义校验规则后表单验证validate不生效导致代码跑不起了人快跑了_第2张图片 el-form自定义校验规则后表单验证validate不生效导致代码跑不起了人快跑了_第3张图片

2.2错误示范: 

此时我们尝试将这个else的内容注释掉,我们再次执行

el-form自定义校验规则后表单验证validate不生效导致代码跑不起了人快跑了_第4张图片

此时校验是可以执行的 

el-form自定义校验规则后表单验证validate不生效导致代码跑不起了人快跑了_第5张图片 但是我们的validate方法是根本执行不了一点的,甚至控制台毫无显示,只有之前校验username的方法可以正常发送打印

el-form自定义校验规则后表单验证validate不生效导致代码跑不起了人快跑了_第6张图片 也就是说,这个点击提交的按钮里面的逻辑一个字母都没跑起来,给我整麻了

el-form自定义校验规则后表单验证validate不生效导致代码跑不起了人快跑了_第7张图片 

三:总结:就是开头的那个结论,如果和我一样,自定义校验规则是写了个方法的话,记得在方法内把规则内的所有可能都给他callback了,别写两个就不管了,真的崩溃了

你可能感兴趣的:(前端技术点,vue.js,elementui,javascript)