项目场景:

vue中this.$refs[form].validate(valid) 一直不执行

问题描述:

在用vue和element做form验证的时候, this.$refs[form].validate(valid) 一直不执行里面的代码,打印出来的时候一直是pending的状态。后来发现还是因为自定义的验证方法里面漏写的callback()


原因分析:

一开始只写了1,2,4 三个callback方法, 漏写了3 的callback 方法,导致我的validate执行不成功, 如果确定你的自定义验证方法里面的callback是都有的, 可以检查

1. prop是不是都添加在了rules, 如果没有就需要删除多余的prop

2. prop 是不是都写在了el-form-item上

3. 这个是我个人碰到的问题,我的data里面漏写了一些字段,导致一开始的时候没有debug到时callback的问题


解决方案:

1. 检查自定义的验证方法, 确保所有出口都有callback

2. 检查prop

3 检查data

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐