From 20c1c4455912a19878404b6b5733475db6eadfb8 Mon Sep 17 00:00:00 2001 From: wujingjing <gersonwu@qq.com> Date: 星期一, 02 十二月 2024 17:47:33 +0800 Subject: [PATCH] 停止生成 --- src/components/chat/hooks/useScrollToBottom.ts | 49 ++++++++++++++++++++----------------------------- 1 files changed, 20 insertions(+), 29 deletions(-) diff --git a/src/components/chat/hooks/useScrollToBottom.ts b/src/components/chat/hooks/useScrollToBottom.ts index 3272653..42bd49f 100644 --- a/src/components/chat/hooks/useScrollToBottom.ts +++ b/src/components/chat/hooks/useScrollToBottom.ts @@ -6,49 +6,40 @@ export type UseScrollToBottomOption = { chatListDom: Ref<HTMLDivElement>; - displayMessageList: ComputedRef<ChatMessage[]>; }; export const useScrollToBottom = (option: UseScrollToBottomOption) => { - const { chatListDom, displayMessageList } = option; + const { chatListDom } = option; const scrollToBottom = () => { - if (!chatListDom.value) return; - const parent = chatListDom.value.parentElement; - if (!parent) return; - if (parent.scrollHeight > parent.clientHeight) { - parent.scrollTop = parent.scrollHeight - parent.clientHeight; - } + nextTick(() => { + if (chatListDom.value.scrollHeight > chatListDom.value.clientHeight) { + chatListDom.value.scrollTop = chatListDom.value.scrollHeight - chatListDom.value.clientHeight; + } + }); + }; + + const scrollToTop = () => { + nextTick(() => { + chatListDom.value.scrollTop = 0; + }); }; const debounceAmisScroll = debounce(({ instance }) => { - nextTick(() => { - scrollToBottom(); - }); + scrollToBottom(); }, 500); - emitter.on('amis.page.ready', debounceAmisScroll); + // emitter.on('amis.page.ready', debounceAmisScroll); - onUnmounted(()=>{ - emitter.off('amis.page.ready'); - }) - const forbidScroll = ref(false); - watch( - displayMessageList, - () => { - if (forbidScroll.value) return; - nextTick(() => scrollToBottom()); - }, - { - deep: true, - } - ); + // onUnmounted(() => { + // emitter.off('amis.page.ready'); + // }); onActivated(() => { - if (forbidScroll.value) return; - nextTick(() => scrollToBottom()); + scrollToBottom(); }); return { - forbidScroll, + scrollToBottom, + scrollToTop, }; }; -- Gitblit v1.9.3