Browse Source

fix: when the form is opened repeatedly, the state is unexpectedly destroyed (#4406)

Vben 9 months ago
parent
commit
02c4014ae3

+ 1 - 1
packages/@core/ui-kit/form-ui/src/form-api.ts

@@ -177,7 +177,7 @@ export class FormApi {
   }
 
   unmounted() {
-    this.state = null;
+    // this.state = null;
     this.isMounted = false;
     this.stateHandler.reset();
   }

+ 7 - 0
playground/src/views/examples/modal/form-model-demo.vue

@@ -1,13 +1,20 @@
 <script lang="ts" setup>
 import { useVbenModal } from '@vben/common-ui';
 
+import { message } from 'ant-design-vue';
+
 import { useVbenForm } from '#/adapter';
 
 defineOptions({
   name: 'FormModelDemo',
 });
 
+function onSubmit(values: Record<string, any>) {
+  message.info(JSON.stringify(values)); // 只会执行一次
+}
+
 const [Form, formApi] = useVbenForm({
+  handleSubmit: onSubmit,
   schema: [
     {
       component: 'Input',