diff --git a/components/MessageArea.vue b/components/MessageArea.vue index 2f6aa97..5ad027c 100644 --- a/components/MessageArea.vue +++ b/components/MessageArea.vue @@ -37,8 +37,7 @@ const messagesRes: MessageResponse[] | undefined = await fetchWithApi( const firstMessageByUsers = ref>({}); const previousMessage = ref(); -async function groupMessage(message: MessageResponse, options?: { prevMessage?: MessageResponse, reverse?: boolean }) { - await nextTick(); +function groupMessage(message: MessageResponse, options?: { prevMessage?: MessageResponse, reverse?: boolean }) { messageTimestamps.value[message.uuid] = uuidToTimestamp(message.uuid); console.log("message:", message.message); console.log("author:", message.user.username, `(${message.user.uuid})`); @@ -138,7 +137,7 @@ if (accessToken && apiBase) { console.log("message uuid:", event.data.uuid); const parsedData = JSON.parse(event.data); - await groupMessage(parsedData); + groupMessage(parsedData); console.log("parsed message type:", messagesType.value[parsedData.uuid]); console.log("parsed message timestamp:", messageTimestamps.value[parsedData.uuid]); messages.value.push(parsedData); @@ -171,6 +170,7 @@ onMounted(async () => { if (messagesElement.value) { scrollToBottom(messagesElement); let fetched = false; + const amount = messages.value.length; let offset = messages.value.length; messagesElement.value.addEventListener("scroll", async (e) => { if (e.target) { @@ -180,7 +180,7 @@ onMounted(async () => { fetched = true; console.log("scroll height is at 10% or less"); //console.log("current oldest:", currentOldestMessage); - const olderMessages = await fetchMessages(route.params.channelId as string, { amount: 2, offset: offset }); + const olderMessages = await fetchMessages(route.params.channelId as string, { amount, offset }); if (olderMessages) { olderMessages.reverse(); console.log("older messages:", olderMessages); @@ -189,10 +189,10 @@ onMounted(async () => { console.log("old message:", oldMessage); messages.value.unshift(oldMessage); for (const message of messages.value) { - await groupMessage(message); + groupMessage(message); } } - offset += 2; + offset += offset; } } else { fetched = false;