소스 검색

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

vben 4 년 전
부모
커밋
d09406e3cb
4개의 변경된 파일9개의 추가작업 그리고 2개의 파일을 삭제
  1. 2 1
      src/components/Form/src/BasicForm.vue
  2. 4 0
      src/components/Form/src/props.ts
  3. 2 1
      src/components/Form/src/types/form.ts
  4. 1 0
      src/components/Table/src/BasicTable.vue

+ 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"