From 2069d53e9be24adec3c8d6717fd7317555bd9a52 Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期二, 02 七月 2024 23:02:51 +0800
Subject: [PATCH] 高级表单优化

---
 src/views/demo/comp/modal/Modal4.vue |   97 +++++++++++++++++++++++-------------------------
 1 files changed, 46 insertions(+), 51 deletions(-)

diff --git a/src/views/demo/comp/modal/Modal4.vue b/src/views/demo/comp/modal/Modal4.vue
index 299f3cb..86dd6bb 100644
--- a/src/views/demo/comp/modal/Modal4.vue
+++ b/src/views/demo/comp/modal/Modal4.vue
@@ -6,14 +6,15 @@
     @visible-change="handleVisibleChange"
   >
     <div class="pt-3px pr-3px">
-      <BasicForm @register="registerForm" :model="model" />
+      <BasicForm @register="registerForm" :model="modelRef" />
     </div>
   </BasicModal>
 </template>
-<script lang="ts">
-  import { defineComponent, ref, nextTick } from 'vue';
-  import { BasicModal, useModalInner } from '/@/components/Modal';
-  import { BasicForm, FormSchema, useForm } from '/@/components/Form/index';
+<script lang="ts" setup>
+  import { ref, nextTick } from 'vue';
+  import { BasicModal, useModalInner } from '@/components/Modal';
+  import { BasicForm, FormSchema, useForm } from '@/components/Form';
+
   const schemas: FormSchema[] = [
     {
       field: 'field1',
@@ -33,53 +34,47 @@
       },
     },
   ];
-  export default defineComponent({
-    components: { BasicModal, BasicForm },
-    props: {
-      userData: { type: Object },
-    },
-    setup(props) {
-      const modelRef = ref({});
-      const [
-        registerForm,
-        {
-          // setFieldsValue,
-          // setProps
-        },
-      ] = useForm({
-        labelWidth: 120,
-        schemas,
-        showActionButtonGroup: false,
-        actionColOptions: {
-          span: 24,
-        },
-      });
 
-      const [register] = useModalInner((data) => {
-        data && onDataReceive(data);
-      });
-
-      function onDataReceive(data) {
-        console.log('Data Received', data);
-        // 鏂瑰紡1;
-        // setFieldsValue({
-        //   field2: data.data,
-        //   field1: data.info,
-        // });
-
-        // // 鏂瑰紡2
-        modelRef.value = { field2: data.data, field1: data.info };
-
-        // setProps({
-        //   model:{ field2: data.data, field1: data.info }
-        // })
-      }
-
-      function handleVisibleChange(v) {
-        v && props.userData && nextTick(() => onDataReceive(props.userData));
-      }
-
-      return { register, schemas, registerForm, model: modelRef, handleVisibleChange };
+  const props = defineProps({
+    userData: { type: Object },
+  });
+  const modelRef = ref({});
+  const [
+    registerForm,
+    // {
+    //   // setFieldsValue,
+    //   // setProps
+    // },
+  ] = useForm({
+    labelWidth: 120,
+    schemas,
+    showActionButtonGroup: false,
+    actionColOptions: {
+      span: 24,
     },
   });
+
+  const [register] = useModalInner((data) => {
+    data && onDataReceive(data);
+  });
+
+  function onDataReceive(data) {
+    console.log('Data Received', data);
+    // 鏂瑰紡1;
+    // setFieldsValue({
+    //   field2: data.data,
+    //   field1: data.info,
+    // });
+
+    // // 鏂瑰紡2
+    modelRef.value = { field2: data.data, field1: data.info };
+
+    // setProps({
+    //   model:{ field2: data.data, field1: data.info }
+    // })
+  }
+
+  function handleVisibleChange(v) {
+    v && props.userData && nextTick(() => onDataReceive(props.userData));
+  }
 </script>

--
Gitblit v1.9.3