From 2e69c3fefc51b340c95ea03d0f4f8d58a3f0b2b5 Mon Sep 17 00:00:00 2001 From: Dream <1012377328@qq.com> Date: Thu, 23 Jul 2026 15:47:08 +0800 Subject: [PATCH] fix(@vben/playground): address form codec edge cases --- playground/src/views/demos/form-array/index.vue | 2 +- playground/src/views/system/menu/modules/form.vue | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/playground/src/views/demos/form-array/index.vue b/playground/src/views/demos/form-array/index.vue index 536508c3..702c1960 100644 --- a/playground/src/views/demos/form-array/index.vue +++ b/playground/src/views/demos/form-array/index.vue @@ -121,7 +121,7 @@ const schema: VbenFormSchema[] = [ defaultValue: '', fieldName: 'name', label: '姓名', - rules: z.string().min(1, '请输入姓名'), + rules: z.string().trim().min(1, '请输入姓名'), }, { component: 'Select', diff --git a/playground/src/views/system/menu/modules/form.vue b/playground/src/views/system/menu/modules/form.vue index 8129e83d..7ce50f05 100644 --- a/playground/src/views/system/menu/modules/form.vue +++ b/playground/src/views/system/menu/modules/form.vue @@ -40,15 +40,19 @@ function encodeMenuFormValues( ): MenuSubmitValues { const { linkSrc, ...formValues } = values; if (values.type === 'link') { + const meta = { ...values.meta, link: linkSrc }; + Reflect.deleteProperty(meta, 'iframeSrc'); return { ...formValues, - meta: { ...values.meta, link: linkSrc }, + meta, }; } if (values.type === 'embedded') { + const meta = { ...values.meta, iframeSrc: linkSrc }; + Reflect.deleteProperty(meta, 'link'); return { ...formValues, - meta: { ...values.meta, iframeSrc: linkSrc }, + meta, }; } return formValues;