Browse Source

fix(form): ensure that the hidden fields of the form are verified properly, fix #413

Vben 4 years ago
parent
commit
237f41da68

+ 1 - 0
CHANGELOG.zh_CN.md

@@ -20,6 +20,7 @@
 - 确保 progress 进度条正确关闭
 - 修复表格勾选列配置失效问题
 - 确保一级菜单可以被隐藏
+- 确保表单隐藏字段校验正常
 
 ### 🎫 Chores
 

+ 2 - 2
src/components/Form/src/components/FormItem.vue

@@ -156,9 +156,9 @@
           if (!isShow) {
             rule.required = false;
           }
-          if (rule.required && component) {
+          if (component) {
             if (!Reflect.has(rule, 'type')) {
-              rule.type = 'string';
+              rule.type = component === 'InputNumber' ? 'number' : 'string';
             }
             const joinLabel = Reflect.has(props.schema, 'rulesMessageJoinLabel')
               ? rulesMessageJoinLabel

+ 1 - 1
src/design/ant/index.less

@@ -14,7 +14,7 @@
 }
 
 span.anticon:not(.app-iconify) {
-  vertical-align: 0.135em;
+  vertical-align: 0.125em !important;
 }
 
 .ant-back-top {

+ 8 - 0
src/views/demo/form/RuleForm.vue

@@ -39,6 +39,14 @@
       required: true,
     },
     {
+      field: 'id',
+      label: 'id',
+      required: true,
+      defaultValue: 0,
+      component: 'InputNumber',
+      show: false,
+    },
+    {
       field: 'field3',
       component: 'DatePicker',
       label: '字段3',