From f73947395184fd635df3d74c1c4b2701d0c708c1 Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期二, 25 六月 2024 14:51:04 +0800
Subject: [PATCH] 动态Import更新

---
 src/views/demo/form/RefForm.vue |   48 +++++++++++++++++++++++-------------------------
 1 files changed, 23 insertions(+), 25 deletions(-)

diff --git a/src/views/demo/form/RefForm.vue b/src/views/demo/form/RefForm.vue
index 20fa7b6..1c65e25 100644
--- a/src/views/demo/form/RefForm.vue
+++ b/src/views/demo/form/RefForm.vue
@@ -7,6 +7,8 @@
       <a-button @click="setProps({ size: 'default' })" class="mr-2"> 杩樺師Size </a-button>
       <a-button @click="setProps({ disabled: true })" class="mr-2"> 绂佺敤琛ㄥ崟 </a-button>
       <a-button @click="setProps({ disabled: false })" class="mr-2"> 瑙i櫎绂佺敤 </a-button>
+      <a-button @click="setProps({ readonly: true })" class="mr-2"> 鍙琛ㄥ崟 </a-button>
+      <a-button @click="setProps({ readonly: false })" class="mr-2"> 瑙i櫎鍙 </a-button>
       <a-button @click="setProps({ compact: true })" class="mr-2"> 绱у噾琛ㄥ崟 </a-button>
       <a-button @click="setProps({ compact: false })" class="mr-2"> 杩樺師姝e父闂磋窛 </a-button>
       <a-button @click="setProps({ actionColOptions: { span: 8 } })" class="mr-2">
@@ -64,12 +66,13 @@
     </CollapseContainer>
   </PageWrapper>
 </template>
-<script lang="ts">
-  import { defineComponent, ref } from 'vue';
-  import { BasicForm, FormSchema, FormActionType, FormProps } from '/@/components/Form/index';
-  import { CollapseContainer } from '/@/components/Container/index';
-  import { useMessage } from '/@/hooks/web/useMessage';
-  import { PageWrapper } from '/@/components/Page';
+<script lang="ts" setup>
+  import { nextTick, ref, unref } from 'vue';
+  import { BasicForm, FormSchema, FormActionType, FormProps } from '@/components/Form';
+  import { CollapseContainer } from '@/components/Container';
+  import { useMessage } from '@/hooks/web/useMessage';
+  import { PageWrapper } from '@/components/Page';
+  import { type Nullable } from '@vben/types';
 
   const schemas: FormSchema[] = [
     {
@@ -166,23 +169,18 @@
     },
   ];
 
-  export default defineComponent({
-    components: { BasicForm, CollapseContainer, PageWrapper },
-    setup() {
-      const formElRef = ref<Nullable<FormActionType>>(null);
-      const { createMessage } = useMessage();
-      return {
-        formElRef,
-        schemas,
-        handleSubmit: (values: any) => {
-          createMessage.success('click search,values:' + JSON.stringify(values));
-        },
-        setProps(props: FormProps) {
-          const formEl = formElRef.value;
-          if (!formEl) return;
-          formEl.setProps(props);
-        },
-      };
-    },
-  });
+  const formElRef = ref<Nullable<FormActionType>>(null);
+  const { createMessage } = useMessage();
+
+  function handleSubmit(values: any) {
+    createMessage.success('click search,values:' + JSON.stringify(values));
+  }
+
+  async function setProps(props: FormProps) {
+    const formEl = unref(formElRef);
+    console.info(formEl);
+    if (!formEl) return;
+    await nextTick();
+    await formEl.setProps(props);
+  }
 </script>

--
Gitblit v1.9.3