React native - onEndReached 和 onRefresh 频繁调用触发问题

Question

在写flatlist上拉下拉或者组件时,经常会遇到onEndReached 和 onRefresh 频繁调用触发的问题,会出现进入页面,还没有下拉刷新,页面就自动下拉刷新的情况。

Reason

由于没有设定flatlist组件高度,所以会导致flatlist组件刚开始要进行动态计算高度,会错误判断高度导致onEndReached 和 onRefresh多次不正常触发。

Solution

将flatlist父元素的样式设成固定值,例如{height: '100%'}或固定高度,这样就不需要动态计算高度,就可以正确触发onEndReached 和 onRefresh的监听了。

你可能感兴趣的:(React native - onEndReached 和 onRefresh 频繁调用触发问题)