fix: chat message save isolation

This commit is contained in:
zijiren233 2024-08-31 10:38:30 +08:00
parent a60e27ef5e
commit 414d798f3b
1 changed files with 3 additions and 7 deletions

View File

@ -115,6 +115,8 @@ const sendMsg = (msg: string) => {
if (msgList.value.length > MAX_MESSAGE_COUNT) {
msgList.value.splice(0, msgList.value.length - MAX_MESSAGE_COUNT);
}
// sessionStorage
sessionStorage.setItem(`chatMessages-${roomID}`, JSON.stringify(msgList.value));
});
//
@ -271,10 +273,6 @@ const handleElementMessage = (msg: ElementMessage) => {
//
sendMsg(messageWithTime);
sendDanmuku(msg.chatResp!.message);
//
if (chatArea.value) chatArea.value.scrollTop = chatArea.value.scrollHeight;
break;
}
case ElementMessageType.PLAY:
@ -380,7 +378,7 @@ onMounted(async () => {
if (!myInfo.value) await getMyInfo(roomToken.value);
// sessionStorage
const storedMessages = sessionStorage.getItem("chatMessages");
const storedMessages = sessionStorage.getItem(`chatMessages-${roomID}`);
if (storedMessages) {
msgList.value = JSON.parse(storedMessages);
}
@ -396,8 +394,6 @@ onMounted(async () => {
try {
const arr = await blobToUint8Array(data.value);
handleElementMessage(ElementMessage.decode(arr));
// sessionStorage
sessionStorage.setItem("chatMessages", JSON.stringify(msgList.value));
} catch (err: any) {
console.error(err);
ElMessage.error(err.message);