diff --git a/packages/features/data-table/lib/resizing.ts b/packages/features/data-table/lib/resizing.ts index 82c9869bd1..ab677598e7 100644 --- a/packages/features/data-table/lib/resizing.ts +++ b/packages/features/data-table/lib/resizing.ts @@ -51,10 +51,13 @@ function getAdjustedColumnSizing({ const getColumnSize = (header: Header) => { const id = header.id; - if (resizedColumns.has(id)) { - return currentColumnSizing[id] ?? initialColumnSizing[id] ?? header.getSize(); + if (!initialColumnSizing[id]) { + initialColumnSizing[id] = header.getSize(); } - return initialColumnSizing[id] ?? header.getSize(); + if (resizedColumns.has(id)) { + return currentColumnSizing[id] ?? initialColumnSizing[id]; + } + return initialColumnSizing[id]; }; const isAdjustable = (header: Header) => @@ -164,7 +167,7 @@ export function usePersistentColumnResizing({ ...old, columnSizing: newColumnSizing, })); - }, [debouncedContainerWidth]); + }, [debouncedContainerWidth, table.getFlatHeaders().length]); useEffect(() => { if (!enabled || !identifier) return;