浏览代码

fix form async validate bug (#1936)

baiyaaaaa 8 年之前
父节点
当前提交
f414049311
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      packages/form/src/form.vue

+ 2 - 1
packages/form/src/form.vue

@@ -54,12 +54,13 @@
       },
       },
       validate(callback) {
       validate(callback) {
         let valid = true;
         let valid = true;
+        let count = 0;
         this.fields.forEach((field, index) => {
         this.fields.forEach((field, index) => {
           field.validate('', errors => {
           field.validate('', errors => {
             if (errors) {
             if (errors) {
               valid = false;
               valid = false;
             }
             }
-            if (typeof callback === 'function' && index === this.fields.length - 1) {
+            if (typeof callback === 'function' && ++count === this.fields.length) {
               callback(valid);
               callback(valid);
             }
             }
           });
           });