在最近的项目中,遇到了一个表单有2个校验按钮,一个是提交全部,这个是校验全部表单的,官方的案例很清楚,这里就不多说了。另一个按钮需要对部分数据作校验,在官网查到了validateField的方法,一开始直接进行了调用,如下:
this.$refs['form'].validateField(['region', 'funder', 'subbranchId'], errorMsg => {
if(!errorMsg){
//执行校验成功的相关操作
}
})
但是发现,这个方法,在你校验多个时候,回调函数是会执行多次的,这样就造成了无法确定是否全部校验完成的问题,在经过思考尝试后,使用如下代码解决问题:
const { region, funder, subbranchId } = this.form
if (region && funder && subbranchId) {
//执行校验成功的相关操作
} else {
this.$refs['form'].validateField(['region', 'funder', 'subbranchId'])
}
希望我的办法能帮到你,谢阅~
网友评论