每次RefreshControll数据重复时都会在React本机的ScrollView上进行刷新

问题描述

说明
我在React Native中使用RequestController实现了一个拉取请求,每次我拉取刷新相同的数据时,都会一遍又一遍地添加到平面列表中。我不是在Flat列表中而是在包裹了ScrollView的{​​{1}}上实现了拉取请求。

动作

FlatList

输出
每次触发新的拉动刷新时都会复制数据

解决方法

我假设您的api调用返回了整个产品列表

此行将cat-api-response-data链接到您在组件状态下已经拥有的产品列表

this.setState({results: [...this.state.results,response.data]});

试试看...

this.setState({ results: response.data });
,

您应该替换数据而不是串联数据。使用:

this.setState({ results: response.data });

此外,您应该使用FlatList'onRefresh'属性实现刷新功能,而不是在父级上使用额外的ScrollView。

,

哦,我找到了办法。我只需要这样做。 this.setState({results: [response.data]});