From f27ff4624ae2adf9119ab3299ac06fe634672b10 Mon Sep 17 00:00:00 2001 From: moonrailgun Date: Fri, 12 Apr 2024 00:22:54 +0800 Subject: [PATCH] refactor: improve callback ref --- .../src/components/ChatBox/ChatMessageList/NormalList.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/client/web/src/components/ChatBox/ChatMessageList/NormalList.tsx b/client/web/src/components/ChatBox/ChatMessageList/NormalList.tsx index bca4e1e7..359a4496 100644 --- a/client/web/src/components/ChatBox/ChatMessageList/NormalList.tsx +++ b/client/web/src/components/ChatBox/ChatMessageList/NormalList.tsx @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useRef, useState } from 'react'; -import { useMemoizedFn, useSharedEventHandler } from 'tailchat-shared'; +import { useEvent, useSharedEventHandler } from 'tailchat-shared'; import { ChatMessageHeader } from './ChatMessageHeader'; import { buildMessageItemRow } from './Item'; import { ScrollToBottom } from './ScrollToBottom'; @@ -21,7 +21,7 @@ export const NormalMessageList: React.FC = React.memo( const lockRef = useRef(false); const [showScrollToBottom, setShowScrollToBottom] = useState(false); - const scrollToBottom = useMemoizedFn(() => { + const scrollToBottom = useEvent(() => { containerRef.current?.scrollTo({ top: 0, behavior: 'smooth' }); }); @@ -38,7 +38,7 @@ export const NormalMessageList: React.FC = React.memo( useSharedEventHandler('sendMessage', scrollToBottom); - const handleScroll = useCallback(() => { + const handleScroll = useEvent(() => { if (props.messages.length === 0) { return; } @@ -63,7 +63,7 @@ export const NormalMessageList: React.FC = React.memo( lockRef.current = true; setShowScrollToBottom(true); } - }, [props.messages]); + }); return (