经过博主亲自尝试有效:
一、问题
RN项目里使用Flatlist或者SectionList组件时,组件一加载,就会自行触发多次onEndReached事件。
二、原因
经过调试发现,是因为最外层父View没有设置固定height或只设置{flex:1}属性,导致onEndReached不能正确监听事件。
flex: 1是自动计算高度,这对容器列表组件很不友好,计算会错乱。
三、解决
1.给最外层父组件一个固定高度{height:‘100%’};
2.设置onEndReachedThreshold={0.01},确保滑动到距离底部最后0.01时再调动加载功能即可。