From 13a41679bcc5b548e1c51334ebfefbd55c1ea0e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 25 Mar 2026 10:32:45 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E9=87=8D=E5=A4=8D=E5=8C=85=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/createCustomNameComponent.tsx | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/utils/createCustomNameComponent.tsx b/src/utils/createCustomNameComponent.tsx index daf5866..802ea13 100644 --- a/src/utils/createCustomNameComponent.tsx +++ b/src/utils/createCustomNameComponent.tsx @@ -12,6 +12,7 @@ interface Options { export function createCustomNameComponent(loader: () => Promise, options: Options = {}): () => Promise { const { name } = options; let component: Component | null = null; + let wrappedComponent: Component | null = null; const load = async () => { try { @@ -27,13 +28,15 @@ export function createCustomNameComponent(loader: () => Promise, options: O await load(); } - return Promise.resolve( - defineComponent({ + if (!wrappedComponent) { + wrappedComponent = defineComponent({ name, render() { return h(component as Component); } - }) - ); + }); + } + + return Promise.resolve(wrappedComponent); }; }