@@ -71,17 +71,17 @@ export const VirtualList = forwardRef(function <ITEM>(
7171 props : VirtualListProps < ITEM > ,
7272 ref : React . ForwardedRef < VirtualListHandle >
7373) {
74- const [ itemSize , setitemSize ] = useState ( props . itemSize || 100 ) ;
74+ const [ itemSize , setItemSize ] = useState ( props . itemSize || 100 ) ;
7575 const buffer = useMemo ( ( ) => props . buffer || Math . max ( itemSize * 5 , 100 ) , [ props . buffer , itemSize ] ) ;
7676 const count = props . items . length
7777 const list = useRef < HTMLDivElement > ( null ) ;
7878 const listInner = useRef < HTMLDivElement > ( null ) ;
7979 const prevScrollTop = useRef ( 0 ) ;
8080 const scrollToIndexRef = useRef < { index : number , block : string } > ( ) ;
81- const [ shouldScrollToIndex , setshouldScrollToIndex ] = useState ( [ ] ) ;
82- const [ scrollTop , setscrollTop ] = useState ( 0 ) ;
83- const [ listSize , setlistSize ] = useState ( props . listSize ! ) ;
84- const [ forceRerender , setforceRerender ] = useState ( [ ] ) ; // change value to force rerender
81+ const [ shouldScrollToIndex , setShouldScrollToIndex ] = useState ( [ ] ) ;
82+ const [ scrollTop , setScrollTop ] = useState ( 0 ) ;
83+ const [ listSize , setListSize ] = useState ( props . listSize ! ) ;
84+ const [ forceRerender , setForceRerender ] = useState ( [ ] ) ; // change value to force rerender
8585 const ignoreUpdateScrollTopOnce = useRef ( false ) ;
8686 //
8787 const mainCache = useMemo ( ( ) => {
@@ -127,7 +127,7 @@ export const VirtualList = forwardRef(function <ITEM>(
127127 }
128128
129129 useLayoutEffect ( ( ) => {
130- setlistSize ( list . current ! . clientHeight )
130+ setListSize ( list . current ! . clientHeight )
131131 // get avg item size
132132 if ( props . itemSize == null ) {
133133 let count = 0
@@ -143,7 +143,7 @@ export const VirtualList = forwardRef(function <ITEM>(
143143 totalHeight += ( el as HTMLElement ) . offsetHeight + parseFloat ( style . marginTop ) + parseFloat ( style . marginBottom )
144144 count ++
145145 }
146- setitemSize ( totalHeight / count )
146+ setItemSize ( totalHeight / count )
147147 }
148148 } , [ props . itemSize , props . items , forceRerender ] ) ;
149149 //
@@ -156,14 +156,14 @@ export const VirtualList = forwardRef(function <ITEM>(
156156 return
157157 }
158158
159- setlistSize ( list . current ! . clientHeight )
159+ setListSize ( list . current ! . clientHeight )
160160
161161 if ( ignoreUpdateScrollTopOnce . current ) {
162162 ignoreUpdateScrollTopOnce . current = false
163163 } else {
164164 const scrollTop = list . current ! . scrollTop ;
165165 if ( Math . abs ( prevScrollTop . current - scrollTop ) > ( props . triggerDistance ?? itemSize ) ) {
166- setscrollTop ( scrollTop )
166+ setScrollTop ( scrollTop )
167167 prevScrollTop . current = scrollTop
168168 }
169169 }
@@ -179,12 +179,12 @@ export const VirtualList = forwardRef(function <ITEM>(
179179 }
180180 const scrollTop = index * itemSize // estimated value
181181 list . current ! . scrollTop = scrollTop
182- setscrollTop ( scrollTop )
182+ setScrollTop ( scrollTop )
183183 prevScrollTop . current = scrollTop
184- setshouldScrollToIndex ( [ ] ) // ensure re-render but exclude itemSize. setforceRerender will re calculate avg itemSize, so don't use it here.
184+ setShouldScrollToIndex ( [ ] ) // ensure re-render but exclude itemSize. setForceRerender will re calculate avg itemSize, so don't use it here.
185185 } ,
186186 forceUpdate ( ) {
187- setforceRerender ( [ ] )
187+ setForceRerender ( [ ] )
188188 } ,
189189 getRootElement ( ) {
190190 return list . current !
0 commit comments