在一个React Native项目中,使用react query在提要中带来无限滚动- RAM越来越多地被消耗,但不会释放组件的内存(从近170 MB开始,达到2 GB,应用程序崩溃)。
任何帮助都非常感谢。"react-native": "0.72.4", "@tanstack/react-query": "^4.29.17"
页面被无限滚动,分页的API每10个项目被调用一次,每次滚动RAM都在增加,它必须是平均大小。并且RAM必须被释放用于窗口外的项目。
预计会有内存泄漏,但只返回一个Text,它仍然增加内存,但计数减少
2条答案
按热度按时间bmp9r5qi1#
并且RAM必须被释放用于窗口外的项目。
React Query将数据缓存在内存中,因此不能仅仅因为它不在视口中就将其释放。
在V5中有一些改进:
对于您的情况,请尝试
maxPages
选项。ecbunoof2#
消耗内存的是窗口之外的项目没有被删除。我通过为 Package FlatList的scrollview赋予
removeClippedSubViews
prop为true并为其中Map的项赋予overflow:"hidden"
样式来实现它