Skip to content

Commit 4cff725

Browse files
author
Jannick Garthen
committed
fix(ViewportProvider): reduce unneeded layout for calls to getCurrentDefaultViewport
1 parent ca4cfb1 commit 4cff725

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

lib/ViewportProvider.tsx

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,18 @@ interface IListener extends IViewportChangeOptions {
2323
skippedIterations: number;
2424
}
2525

26-
const getCurrentDefaultViewport = (): IViewport => {
27-
return {
28-
scroll: getClientScroll(),
29-
dimensions: getClientDimensions(),
30-
};
31-
};
26+
const getCurrentDefaultViewport = (() => {
27+
let defaultValue: IViewport;
28+
return (): IViewport => {
29+
if (!defaultValue) {
30+
defaultValue = {
31+
scroll: getClientScroll(),
32+
dimensions: getClientDimensions(),
33+
}
34+
}
35+
return defaultValue
36+
}
37+
})();
3238

3339
export const ViewportContext = React.createContext({
3440
removeViewportChangeListener: (handler: TViewportChangeHandler) => { },

0 commit comments

Comments
 (0)