@@ -2,8 +2,6 @@ import React from 'react';
22
33import { throttle } from 'lodash' ;
44
5- import { getArray } from '../../utils' ;
6-
75import { calculateElementOffsetTop } from './utils' ;
86
97interface UseScrollBasedChunksProps {
@@ -31,14 +29,6 @@ export const useScrollBasedChunks = ({
3129 [ chunkSize , totalItems ] ,
3230 ) ;
3331
34- const chunkLengths = React . useMemo (
35- ( ) =>
36- getArray ( chunksCount ) . map ( ( value ) =>
37- Math . min ( chunkSize , totalItems - value * chunkSize ) ,
38- ) ,
39- [ chunkSize , chunksCount , totalItems ] ,
40- ) ;
41-
4232 const [ startChunk , setStartChunk ] = React . useState ( 0 ) ;
4333 const [ endChunk , setEndChunk ] = React . useState (
4434 Math . min ( overscanCount , Math . max ( chunksCount - 1 , 0 ) ) ,
@@ -95,9 +85,9 @@ export const useScrollBasedChunks = ({
9585 // 0 items represent inactive chunk
9686 const chunks = Array ( chunksCount ) . fill ( 0 ) ;
9787 for ( let i = startChunk ; i <= endChunk ; i ++ ) {
98- chunks [ i ] = chunkLengths [ i ] ;
88+ chunks [ i ] = endChunk === chunksCount - 1 ? totalItems % chunkSize : chunkSize ;
9989 }
10090
10191 return chunks ;
102- } , [ chunksCount , startChunk , endChunk , chunkLengths ] ) ;
92+ } , [ chunksCount , startChunk , endChunk , totalItems , chunkSize ] ) ;
10393} ;
0 commit comments