fix: 在沒有消息時, 發送消息並拉取導致的消息重複
This commit is contained in:
@@ -82,6 +82,7 @@ export default function ChatFragment({ target, showReturnButton, onReturnButtonC
|
|||||||
|
|
||||||
if (checkApiSuccessOrSncakbar(re, "拉取歷史記錄失敗")) return
|
if (checkApiSuccessOrSncakbar(re, "拉取歷史記錄失敗")) return
|
||||||
const returnMsgs = (re.data!.messages as Message[]).reverse()
|
const returnMsgs = (re.data!.messages as Message[]).reverse()
|
||||||
|
page.current++
|
||||||
if (returnMsgs.length == 0) {
|
if (returnMsgs.length == 0) {
|
||||||
setShowNoMoreMessagesTip(true)
|
setShowNoMoreMessagesTip(true)
|
||||||
setTimeout(() => setShowNoMoreMessagesTip(false), 1000)
|
setTimeout(() => setShowNoMoreMessagesTip(false), 1000)
|
||||||
@@ -91,8 +92,6 @@ export default function ChatFragment({ target, showReturnButton, onReturnButtonC
|
|||||||
const oldest = messagesList[0]
|
const oldest = messagesList[0]
|
||||||
setMessagesList(returnMsgs.concat(messagesList))
|
setMessagesList(returnMsgs.concat(messagesList))
|
||||||
setTimeout(() => chatPanelRef.current!.scrollTo({ top: $(`#chat_${target}_message_${oldest.id}`).get(0).offsetTop, behavior: 'smooth' }), 100)
|
setTimeout(() => chatPanelRef.current!.scrollTo({ top: $(`#chat_${target}_message_${oldest.id}`).get(0).offsetTop, behavior: 'smooth' }), 100)
|
||||||
|
|
||||||
page.current++
|
|
||||||
}
|
}
|
||||||
|
|
||||||
React.useEffect(() => {
|
React.useEffect(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user