From 4bef92984fb184da2795b46442f22867dc785ecd Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Mon, 2 Dec 2024 13:31:18 +0100 Subject: [PATCH] bugfixing --- src/routes/analysts/[slug]/+page.svelte | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/routes/analysts/[slug]/+page.svelte b/src/routes/analysts/[slug]/+page.svelte index a8363e41..e3f66567 100644 --- a/src/routes/analysts/[slug]/+page.svelte +++ b/src/routes/analysts/[slug]/+page.svelte @@ -9,8 +9,10 @@ let analystStats = data?.getAnalystStats; let rawData = data?.getAnalystStats?.ratingsList; - let stockList = rawData?.slice(0, 20) ?? []; + let originalData = [...rawData]; // Unaltered copy of raw data + let stockList = rawData?.slice(0, 50) ?? []; + console.log(rawData); let analystScore = analystStats?.analystScore; let rank = analystStats?.rank; let analystName = analystStats?.analystName; @@ -27,9 +29,10 @@ async function handleScroll() { const scrollThreshold = document.body.offsetHeight * 0.8; // 80% of the website height const isBottom = window.innerHeight + window.scrollY >= scrollThreshold; - if (isBottom && stockList?.length !== rawData?.length) { + + if (isBottom && stockList?.length !== originalData?.length) { const nextIndex = stockList?.length; - const filteredNewResults = rawData?.slice(nextIndex, nextIndex + 50); + const filteredNewResults = originalData?.slice(nextIndex, nextIndex + 50); stockList = [...stockList, ...filteredNewResults]; } } @@ -73,8 +76,6 @@ // Cycle through 'none', 'asc', 'desc' for the clicked key const orderCycle = ["none", "asc", "desc"]; - let originalData = rawData; - const currentOrderIndex = orderCycle.indexOf(sortOrders[key].order); sortOrders[key].order = orderCycle[(currentOrderIndex + 1) % orderCycle.length]; @@ -82,7 +83,8 @@ // Reset to original data when 'none' and stop further sorting if (sortOrder === "none") { - stockList = [...originalData]?.slice(0, 50); // Reset to original data (spread to avoid mutation) + originalData = [...rawData]; // Reset originalData to rawData + stockList = originalData?.slice(0, 50); // Reset displayed data return; }