Browse Source

chore: 自定义组件默认rule校验默认触发逻辑为blur

invalid w 1 year ago
parent
commit
23b684977c
1 changed files with 4 additions and 3 deletions
  1. 4 3
      src/components/Form/src/components/FormItem.vue

+ 4 - 3
src/components/Form/src/components/FormItem.vue

@@ -169,7 +169,6 @@
           dynamicRules,
           required,
         } = props.schema;
-
         if (isFunction(dynamicRules)) {
           return dynamicRules(unref(getValues)) as ValidationRule[];
         }
@@ -210,7 +209,6 @@
           }
           return Promise.resolve();
         }
-
         const getRequired = isFunction(required) ? required(unref(getValues)) : required;
 
         /*
@@ -220,7 +218,10 @@
          */
         if (getRequired) {
           if (!rules || rules.length === 0) {
-            rules = [{ required: getRequired, validator }];
+            const trigger = NO_AUTO_LINK_COMPONENTS.includes(component || 'Input')
+              ? 'blur'
+              : 'change';
+            rules = [{ required: getRequired, validator, trigger }];
           } else {
             const requiredIndex: number = rules.findIndex((rule) => Reflect.has(rule, 'required'));