From bc758db681202f48360b4a70b72c09687319d217 Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Wed, 4 Sep 2024 22:25:37 +0200 Subject: [PATCH] fix issues with loading time --- .../stock-screener/[strategyId]/+page.svelte | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/routes/stock-screener/[strategyId]/+page.svelte b/src/routes/stock-screener/[strategyId]/+page.svelte index 20b27acc..38913e6c 100644 --- a/src/routes/stock-screener/[strategyId]/+page.svelte +++ b/src/routes/stock-screener/[strategyId]/+page.svelte @@ -10,7 +10,8 @@ export let data; export let form; - + let isLoaded = false; + $strategyId = data?.getStrategyId; let ruleOfList = data?.getStrategy?.rules ?? []; let displayRules = []; @@ -265,6 +266,7 @@ async function handleRule(newRule) { } async function updateStockScreenerData() { + isLoaded = false; try { const newData = await getStockScreenerData(ruleOfList); stockScreenerData = newData?.filter(item => @@ -284,6 +286,7 @@ async function updateStockScreenerData() { style: 'border-radius: 200px; background: #333; color: #fff;' }); } + isLoaded = true; } async function handleResetAll() { @@ -394,6 +397,7 @@ async function handleSave(printToast) { $: { if (ruleOfList) { + isLoaded = false; const ruleToUpdate = ruleOfList?.find(rule => rule.name === ruleName); if (ruleToUpdate) { ruleToUpdate.value = valueMappings[ruleToUpdate.name]; @@ -545,8 +549,13 @@ $: { } } -$: displayResults = filteredData?.slice(0, 50); - console.log(displayResults) +$: { + if(displayResults && typeof window !== 'undefined' && isLoaded === false) { + displayResults = filteredData?.slice(0, 50); + isLoaded = true; + } +} + $: isSaved = !ruleOfList; $: charNumber = $screenWidth < 640 ? 20 : 40; @@ -985,7 +994,7 @@ async function popularStrategy(state: string) { - + {#if isLoaded} {#if displayResults?.length !== 0} {#if displayTableTab === 'general'} @@ -1116,7 +1125,7 @@ async function popularStrategy(state: string) { {/if} - + {/if} {:else}