From 8a73b83ab3031907d7a6a056f716258935cf342a Mon Sep 17 00:00:00 2001 From: Konv Suu <2583695112@qq.com> Date: Sat, 10 Dec 2022 14:42:06 +0800 Subject: [PATCH] feat: onClose event runs repeatedly --- components/vc-notification/Notice.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/components/vc-notification/Notice.tsx b/components/vc-notification/Notice.tsx index 33fe206494..cf9eee1d54 100644 --- a/components/vc-notification/Notice.tsx +++ b/components/vc-notification/Notice.tsx @@ -46,9 +46,10 @@ export default defineComponent({ ] as any, setup(props, { attrs, slots }) { let closeTimer: any; - const duration = computed(() => (props.duration === undefined ? 1.5 : props.duration)); + let isUnMounted = false; + const duration = computed(() => (props.duration === undefined ? 4.5 : props.duration)); const startCloseTimer = () => { - if (duration.value) { + if (duration.value && !isUnMounted) { closeTimer = setTimeout(() => { close(); }, duration.value * 1000); @@ -79,6 +80,7 @@ export default defineComponent({ startCloseTimer(); }); onUnmounted(() => { + isUnMounted = true; clearCloseTimer(); });