Browse Source

feat: 解决Form组件slot必须传递component字段才显示的问题 (#3049)

feat: 解决Form组件slot必须传递component字段才显示的问题
zmcode 1 year ago
parent
commit
a6b65b58a1
1 changed files with 6 additions and 3 deletions
  1. 6 3
      src/components/Form/src/components/FormItem.vue

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

@@ -159,7 +159,10 @@
         const joinLabel = Reflect.has(props.schema, 'rulesMessageJoinLabel')
           ? rulesMessageJoinLabel
           : globalRulesMessageJoinLabel;
-        const defaultMsg = createPlaceholderMessage(component) + `${joinLabel ? label : ''}`;
+        const assertLabel = joinLabel ? label : '';
+        const defaultMsg = component
+          ? createPlaceholderMessage(component) + assertLabel
+          : assertLabel;
 
         function validator(rule: any, value: any) {
           const msg = rule.message || defaultMsg;
@@ -382,8 +385,8 @@
       }
 
       return () => {
-        const { colProps = {}, colSlot, renderColContent, component } = props.schema;
-        if (!componentMap.has(component)) {
+        const { colProps = {}, colSlot, renderColContent, component, slot } = props.schema;
+        if (!componentMap.has(component) && !slot) {
           return null;
         }