fix: PC端表头初始化渲染问题

This commit is contained in:
hzm
2026-03-09 17:23:59 +08:00
parent 5f909cc669
commit 3ed129afb2
2 changed files with 14 additions and 3 deletions

View File

@@ -354,13 +354,19 @@ export default function MobileFundTable({
const nextStickyTop = getEffectiveStickyTop();
setEffectiveStickyTop((prev) => (prev === nextStickyTop ? prev : nextStickyTop));
const tableRect = tableContainerRef.current?.getBoundingClientRect();
const tableEl = tableContainerRef.current;
const tableRect = tableEl?.getBoundingClientRect();
if (!tableRect) {
setShowPortalHeader(window.scrollY >= nextStickyTop);
return;
}
setShowPortalHeader(tableRect.top <= nextStickyTop);
const headerEl = tableEl?.querySelector('.table-header-row');
const headerHeight = headerEl?.getBoundingClientRect?.().height ?? 0;
const hasPassedHeader = (tableRect.top + headerHeight) <= nextStickyTop;
const hasTableInView = tableRect.bottom > nextStickyTop;
setShowPortalHeader(hasPassedHeader && hasTableInView);
};
const throttledVerticalUpdate = throttle(updateVerticalState, 1000/60, { leading: true, trailing: true });