我在加载 FlatList 时首次显示20个项目。一旦用户到达列表的末尾,再次获取20个项目并将这些项目添加到先前的列表,然后显示这40个项目。但问题是,当第二次加载项目时,我将不得不从第一个项目再次滚动,而不是第21个项目。这是我的 FlatList ,
<FlatList
style={{ marginTop: 10 }}
data={this.props.data}
renderItem={({ item, index }) => this.renderCardItems(item, index)}
keyExtractor={item => item.id}
onEndReached={this.loadMore}
onEndReachedThreshold={0}
/>
loadMore()执行提取操作
axios.get('url').then((res) => {
res.data.main.map(function(a) {
var itemFound = false;
for(var i=0;i<this.props.data.length;i++) {
if(a.id == this.props.data[i].id) {
itemFound = true;
break;
}
}
if(!itemFound)
this.props.data.push(a);
}.bind(this));
//Calling Action creator to keep data in Application state.
this.props.updateListState('App Data', this.props.data);
你可以告诉我如何在 onEndReached 中调用某些特定项目吗?