今天被这个问题搞得头疼,写一个分页加载,但是listview的onEndReached方法老是被频繁调用,知道加载完所有的分页数据才停止。
<ListView automaticallyAdjustContentInsets = {false} contentOffset = {{x:0,y:0}} enableEmptySections={true} dataSource={this.state.dataSourceModel} renderRow={this.renderRowModel.bind(this)} pageSize={10} initialListSize={20} onEndReached={this.loadModeDataMore()} onEndReachedThreshold={10} >
这是代码,后来问过ios的同事才明白,
把 onEndReached={this.loadModeDataMore()}改为onEndReached={()=>this.loadModeDataMore()}就好了,
因为是要把这个方法当做参数传进去,如果不加'()=>'
onEndReached就会把你当成每次都需要执行的一个方法,就会导致频繁调用。