diff --git a/comps/form/base/BaseForm.tsx b/comps/form/base/BaseForm.tsx index 8d1b202..3902e43 100755 --- a/comps/form/base/BaseForm.tsx +++ b/comps/form/base/BaseForm.tsx @@ -58,12 +58,16 @@ export const BaseForm = >( }; form.createFm = () => { + if (form.fm) { + form.fm.data = form.data; + return form.fm; + } let size = "full"; if (form.internal.width > 650) { size = "half"; } - return { + form.fm = { data: form.data, props: { label_mode: "vertical" }, error: { @@ -74,6 +78,7 @@ export const BaseForm = >( size: { field: size }, render: form.render, } as any; + return form.fm as any; }; form.fieldProps = (arg) => { @@ -115,6 +120,7 @@ export const BaseForm = >( ref={(el) => { if (el?.offsetWidth) { form.internal.width = el?.offsetWidth; + form.createFm(); } }} > diff --git a/comps/form/base/types.ts b/comps/form/base/types.ts index 7c3b14a..f669444 100755 --- a/comps/form/base/types.ts +++ b/comps/form/base/types.ts @@ -7,6 +7,7 @@ export const default_base_form_local = { internal: { width: 0, }, + fm: null as null | FMLocal, }; type CreateFieldArg = {