react-window用InfiniteLoader包裹后如何获取ref?-灵析社区

木子弓长

import { VariableSizeList as List, areEqual } from 'react-window'; import InfiniteLoader from 'react-window-infinite-loader'; const Demo = ()=>{ const ref = useRef(); const click = ()=>{ // 这里报错,ref没有scrollToItem方法 ref.scrollToItem(0) } return click } const ListWrap = ({ hasNextPage, isNextPageLoading, loadNextPage }) => { return ( {({ onItemsRendered, ref }) => { return ( {Cell} ); }} ); }; 类似上面的代码, 如何获取List的实例ref呢?

阅读量:272

点赞量:15

问AI
import { useRef } from 'react'; import { VariableSizeList as List, areEqual } from 'react-window'; import InfiniteLoader from 'react-window-infinite-loader'; const Demo = () => { const listRef = useRef(); const click = () => { if (listRef.current) { listRef.current.scrollToItem(0); } }; return ( click ); }; const ListWrap = ({ hasNextPage, isNextPageLoading, loadNextPage, listRef }) => { return ( {({ onItemsRendered, ref }) => { return ( { ref(instance); listRef.current = instance; }} > {Cell} ); }} ); };