fix: infiniteScroll

This commit is contained in:
Net 2024-07-30 11:00:12 +07:00
parent fbcaff4b2b
commit 326bc4ea2f

View file

@ -147,23 +147,36 @@ const visibleColumns = ref<string[]>([
"dataDiff",
]);
function handleScroll(event: any) {
const element = event.target;
if (element.scrollHeight - element.scrollTop === element.clientHeight) {
storeData.fetchLog(
{
size: size.value ?? undefined,
search: inputSearch.value ?? undefined,
systemName: systemName.value ?? undefined,
searchAfter: searchAfter.value ?? undefined,
date: date.value,
},
true
);
setTimeout(() => {}, 500);
}
function handleScroll() {
let scrollFlag = false;
return async (e: Event) => {
if (scrollFlag) return;
const element = e.target as HTMLElement;
if (
Math.abs(
element.scrollHeight - element.clientHeight - element.scrollTop
) <= 1
) {
scrollFlag = true;
await storeData.fetchLog(
{
size: size.value ?? undefined,
search: inputSearch.value ?? undefined,
systemName: systemName.value ?? undefined,
searchAfter: searchAfter.value ?? undefined,
date: date.value,
},
true
);
scrollFlag = false;
}
};
}
const infiniteScroll = handleScroll();
function selectedDate() {
logData.value = [];
searchAfter.value = undefined;
@ -277,7 +290,7 @@ onMounted(() => {
</div>
</div>
<div class="q-pa-md">
<div style="max-height: 70vh; overflow: scroll" @scroll="handleScroll">
<div style="max-height: 70vh; overflow: scroll" @scroll="infiniteScroll">
<d-table
ref="table"
:columns="columns"