我有一个flatList,在screenA中有3列,在screenB中也有一个flatList,它也以不同的方式显示screenA的数据。一旦用户单击screenA中的一个项目,它就会导航到screenB并滚动到该项目的索引。我使用react-query
来获取数据。我的问题是如何以真正的方式处理fetchNextPage。因为如果用户在screenB中滚动,则下一页数据应该在两个屏幕中加载。将从useInfiniteQuery
返回的所有{data, fetchNextPage, hasNextPage, refetch}
传递到screenB是否正确?或者有其他解决方案?简单地说,类似于instagram的个人资料屏幕。正如你所看到的,在主配置文件屏幕下的一个选项卡用户点击项目,它的导航到第二个图像。所有的数据加载在第二个屏幕时,用户滚动也加载在主配置文件选项卡。
谢谢你的帮助
1条答案
按热度按时间xfb7svmp1#
你可以把所有的数据传递给screenB,这没关系。但是我建议,只有一个screenA组件和screenB组件,并且基于
useState
钩子显示你想要的组件。每次需要显示screenB时,都将Screen设置为screenB,将itemIndex设置为项索引
当您想要返回屏幕A时:
在您jsx:
您的屏幕B需要
itemIndex
才能滚动到它