From f96d4ed77603ca1f908dcdc4a51bd2ce2178d10c Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期三, 19 六月 2024 10:10:58 +0800 Subject: [PATCH] 登录logo,其他 --- src/components/Loading/src/createLoading.ts | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/components/Loading/src/createLoading.ts b/src/components/Loading/src/createLoading.ts index b91db1f..8c88541 100644 --- a/src/components/Loading/src/createLoading.ts +++ b/src/components/Loading/src/createLoading.ts @@ -1,4 +1,4 @@ -import { VNode, defineComponent, createVNode, render, reactive, h } from 'vue'; +import { createVNode, defineComponent, h, reactive, render, VNode } from 'vue'; import type { LoadingProps } from './typing'; import Loading from './Loading.vue'; @@ -19,13 +19,13 @@ vm = createVNode(LoadingWrap); + let container: Nullable<HTMLElement> = null; if (wait) { - // TODO fix https://github.com/anncwb/vue-vben-admin/issues/438 setTimeout(() => { - render(vm, document.createElement('div')); + render(vm, (container = document.createElement('div'))); }, 0); } else { - render(vm, document.createElement('div')); + render(vm, (container = document.createElement('div'))); } function close() { @@ -41,6 +41,11 @@ target.appendChild(vm.el as HTMLElement); } + function destroy() { + container && render(null, container); + container = vm = null; + } + if (target) { open(target); } @@ -48,6 +53,7 @@ vm, close, open, + destroy, setTip: (tip: string) => { data.tip = tip; }, -- Gitblit v1.9.3