Reactjs ScrollView-当我在数组前面添加元素时,仍然滚动相同的位置

Reactjs ScrollView-当我在数组前面添加元素时,仍然滚动相同的位置,reactjs,react-native,Reactjs,React Native,我正在react native上制作聊天应用程序。我想在向上滚动时记录旧消息。当我向上滚动时,我在数组前面添加元素,但滚动仍然停止在相同的位置。但我想做一个像whatsapp一样的 我如何才能做到这一点?您应该使用而不是 示例: FlatList: <FlatList onEndReached={this.handleLoadMessages} onEndThreshold={0.5} data={this.messages} renderItem={(messag

我正在react native上制作聊天应用程序。我想在向上滚动时记录旧消息。当我向上滚动时,我在数组前面添加元素,但滚动仍然停止在相同的位置。但我想做一个像whatsapp一样的

我如何才能做到这一点?

您应该使用而不是

示例:

FlatList

<FlatList
   onEndReached={this.handleLoadMessages}
   onEndThreshold={0.5}
   data={this.messages}
   renderItem={(message) => <Text>{message}</Text>}
   inverted
/>

FlatList
与true一起使用。在
倒置模式下,平面列表项将从下到上显示。使用
onEndReached
callback将旧消息加载到数组中(FlatList的数据源)

范例

...
<FlatList
   data={/*data source*/}
   renderItem={/*item renderer*/}
   keyExtractor={/*Key Extractor*/}
   onEndReached={this.loadOldMessages}
   onEndThreshold={0.5}
   inverted
/>
...
。。。
...
根据上面的示例
显示列表中的所有项目时(用户已到达末尾),将调用此.loadOldMessages
函数,此时您应该提取新数据(旧消息)并添加到数组中


希望这会有帮助

我不想这样,我想喜欢whatsapp。当我收到旧消息时,内容仍处于相同位置,但滚动继续down@A.Emre请描述获取旧邮件时Whatsapp的功能当Whatsapp获取旧邮件时,向下滚动并缩小。但我的卷轴仍然保持不变。例如,如果(滚动位置
...
<FlatList
   data={/*data source*/}
   renderItem={/*item renderer*/}
   keyExtractor={/*Key Extractor*/}
   onEndReached={this.loadOldMessages}
   onEndThreshold={0.5}
   inverted
/>
...