diff --git a/src/lib/components/PaginationTable/PaginationTableBody.svelte b/src/lib/components/PaginationTable/PaginationTableBody.svelte index 9638b55..5dc1098 100644 --- a/src/lib/components/PaginationTable/PaginationTableBody.svelte +++ b/src/lib/components/PaginationTable/PaginationTableBody.svelte @@ -1,5 +1,6 @@ <script lang="ts"> import { onMount, tick } from 'svelte'; + import { sleep } from '$lib/components/utils'; export let onUpdate: () => Promise<any> = Promise.resolve; @@ -10,7 +11,7 @@ let intersectionElement; function getIntersectionElement() { intersectionElement = - bodyElem.rows.item(bodyElem.rows.length - 10) || bodyElem.lastElementChild; + bodyElem.rows.item(bodyElem.rows.length - 15) || bodyElem.lastElementChild; } onMount(async () => { @@ -20,13 +21,13 @@ intersectionObserver = new IntersectionObserver( async (entries, observer) => { if (entries.filter((e) => e.isIntersecting).length === 0 || !entries) return; + observer.unobserve(intersectionElement!); const rows = bodyElem.rows.length; await onUpdate(); await tick(); - observer.unobserve(intersectionElement!); if (rows === bodyElem.rows.length) return; getIntersectionElement(); observer.observe(intersectionElement!);