From 54b5fa2047324b81b6d2ee7f830693267f946c0a Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期三, 10 一月 2024 17:45:54 +0800
Subject: [PATCH] 1. 编写数据源检查模块

---
 src/composables/formConfirm.js |   27 ++++++++++++++++-----------
 1 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/src/composables/formConfirm.js b/src/composables/formConfirm.js
index d568fe0..92d114c 100644
--- a/src/composables/formConfirm.js
+++ b/src/composables/formConfirm.js
@@ -1,4 +1,4 @@
-import { defineProps, onActivated, onDeactivated, ref, watch } from 'vue';
+import { defineProps, onActivated, onDeactivated, reactive, ref, watch } from 'vue';
 import { useCloned } from '@vueuse/core';
 import { useMessageBoxTip, useMessageBox } from './messageBox';
 
@@ -20,10 +20,10 @@
   if (!cancel.title) cancel.title = '鍙栨秷';
   if (!cancel.msg) cancel.msg = '鏄惁鏀惧純宸茬紪杈戠殑鍐呭锛�';
 
-  const formProps = defineProps({
-    // 鏄惁鍦ㄦ彁浜ゆ垚鍔熷悗娓呯┖琛ㄥ崟
-    clearAftSubmit: Boolean
-  });
+  // const formProps = defineProps({
+  //   // 鏄惁鍦ㄦ彁浜ゆ垚鍔熷悗娓呯┖琛ㄥ崟
+  //   clearAftSubmit: Boolean
+  // });
 
   //琛ㄥ崟鍐呭
   const formObj = ref(defaultForm ? defaultForm : {});
@@ -69,32 +69,33 @@
 
   // 閲嶇疆琛ㄥ崟
   const _reset = function () {
+    formRef.value.clearValidate();
     edit.value = false;
     isReset = true;
     formObj.value = useCloned(formObjClone.cloned, {
       manual: true
     }).cloned.value;
-    formRef.value.clearValidate();
   };
 
   // 娓呯┖琛ㄥ崟
   const clear = function () {
     isReset = true;
-    // formRef.value.resetFields();
+    formRef.value.resetFields();
     edit.value = false;
   };
 
   // 鎻愪氦鎴愬姛鍚�
   const submited = function () {
-    if (formProps.clearAftSubmit) clear();
+    // if (formProps.clearAftSubmit) clear();
     edit.value = false;
     formObjClone = useCloned(formObj, { manual: true });
   };
 
   // 鎻愪氦琛ㄥ崟
-  const onSubmit = function () {
-    formRef.value.validate((valid) => {
+  const onSubmit = function (messageBox = true) {
+    formRef.value.validate(async (valid) => {
       if (valid) {
+        if (messageBox) {
         useMessageBoxTip({
           confirmMsg: submit.msg,
           confirmTitle: submit.title,
@@ -104,6 +105,10 @@
             return res;
           }
         });
+        } else {
+          await submit.do();
+          submited();
+        }
       }
     });
   };
@@ -147,5 +152,5 @@
     }
   };
 
-  return { formProps, formObj, formRef, edit, onSubmit, onCancel, onReset };
+  return { formObj, formRef, edit, onSubmit, onCancel, onReset, clear };
 }

--
Gitblit v1.9.3