Browse Source

feat: add the parameter submitOnReset to the form (#54)

vben 4 years ago
parent
commit
d09406e3cb

+ 2 - 1
src/components/Form/src/BasicForm.vue

@@ -266,7 +266,7 @@
       }
 
       async function resetFields(): Promise<any> {
-        const { resetFunc } = unref(getProps);
+        const { resetFunc, submitOnReset } = unref(getProps);
         resetFunc && isFunction(resetFunc) && (await resetFunc());
         const formEl = unref(formElRef);
         if (!formEl) return;
@@ -276,6 +276,7 @@
         // const values = formEl.resetFields();
         emit('reset', toRaw(formModel));
         // return values;
+        submitOnReset && handleSubmit();
       }
 
       /**

+ 4 - 0
src/components/Form/src/props.ts

@@ -30,6 +30,10 @@ export const basicProps = {
     type: Boolean,
     default: true,
   },
+  submitOnReset: {
+    type: Boolean,
+    default: false,
+  },
   size: {
     type: String as PropType<'default' | 'small' | 'large'>,
     default: 'default',

+ 2 - 1
src/components/Form/src/types/form.ts

@@ -30,7 +30,8 @@ export type UseFormReturnType = [RegisterFn, FormActionType];
 export interface FormProps {
   // 整个表单所有项宽度
   labelWidth?: number | string;
-
+  // 重置时提交
+  submitOnReset?: boolean;
   // 整个表单通用Col配置
   labelCol?: Partial<ColEx>;
   // 整个表单通用Col配置

+ 1 - 0
src/components/Table/src/BasicTable.vue

@@ -9,6 +9,7 @@
     <BasicForm
       v-bind="getFormProps"
       v-if="getBindValues.useSearchForm"
+      :submitOnReset="true"
       :submitButtonOptions="{ loading }"
       @register="registerForm"
       @submit="handleSearchInfoChange"