From 51b20c8b1322bb8dab7059823ffc4c2fd3272237 Mon Sep 17 00:00:00 2001
From: zmc <zmc_li@foxmail.com>
Date: 星期一, 18 十二月 2023 17:32:46 +0800
Subject: [PATCH] 增加用户信息表的数据展示

---
 src/composables/formConfirm.js |   37 +++++++++++++++++++++++--------------
 1 files changed, 23 insertions(+), 14 deletions(-)

diff --git a/src/composables/formConfirm.js b/src/composables/formConfirm.js
index 786cc6a..306b125 100644
--- a/src/composables/formConfirm.js
+++ b/src/composables/formConfirm.js
@@ -4,10 +4,14 @@
 import { useMessageBoxTip, useMessageBox } from './messageBox';
 
 export function useFormConfirm({
+  defaultForm = undefined,
   submit = {
     do: () => {},
   },
   cancel = {
+    do: () => {},
+  },
+  reset = {
     do: () => {},
   },
 }) {
@@ -17,7 +21,7 @@
   if (!cancel.msg) cancel.msg = '鏄惁鏀惧純宸茬紪杈戠殑鍐呭锛�';
 
   //琛ㄥ崟鍐呭
-  const formObj = ref({});
+  const formObj = ref(defaultForm ? defaultForm : {});
   let formObjClone = useCloned(formObj, { manual: true });
   //琛ㄥ崟缁勪欢寮曠敤
   const formRef = ref(null);
@@ -48,7 +52,7 @@
     formObj,
     (nv, ov) => {
       if (!isReset && nv != ov) {
-        formObjClone = useCloned(formObj, { manual: true });
+        formObjClone = useCloned(nv, { manual: true });
       }
       if (!isReset && nv === ov) {
         edit.value = true;
@@ -59,7 +63,7 @@
   );
 
   // 閲嶇疆琛ㄥ崟
-  const reset = function () {
+  const _reset = function () {
     edit.value = false;
     isReset = true;
     formObj.value = useCloned(formObjClone.cloned, {
@@ -116,19 +120,24 @@
   };
 
   // 閲嶇疆琛ㄥ崟
-  const onReset = function () {
+  const onReset = function (tips) {
     if (edit.value) {
-      // 寮瑰嚭纭妗�
-      useMessageBox({
-        confirmMsg: '鏄惁閲嶇疆琛ㄥ崟鍐呭锛�',
-        confirmTitle: '閲嶇疆琛ㄥ崟',
-        onConfirm: () => {
-          reset();
-          return cancel.do();
-        },
-      });
+      if (tips) {
+        // 寮瑰嚭纭妗�
+        useMessageBox({
+          confirmMsg: '鏄惁閲嶇疆琛ㄥ崟鍐呭锛�',
+          confirmTitle: '閲嶇疆琛ㄥ崟',
+          onConfirm: () => {
+            _reset();
+            return reset.do();
+          },
+        });
+      } else {
+        _reset();
+        reset.do();
+      }
     } else {
-      cancel.do();
+      reset.do();
     }
   };
 

--
Gitblit v1.9.3