Reactjs 应用程序加载时,将屏幕定位在平面列表中的最后一项上
我目前正在React Native中构建一个聊天应用程序,并试图在加载messagelist时将屏幕定位到最后一条消息上。这个视图构建时使用的组件是FlatList,我知道它为我们提供了即时的scrollToIndex和ScrollToEnd功能,但在componentDidMount内部调用它时,这似乎不能很好地工作。除此之外,滚动功能似乎是让它正常工作的另一个障碍 我还尝试使用initialScrollIndex属性,并将最后一个索引作为属性传递。实际上,它似乎在一瞬间起作用,但屏幕会快速返回到第一个索引。我不知道这是为什么。下面是我的代码:Reactjs 应用程序加载时,将屏幕定位在平面列表中的最后一项上,reactjs,react-native,Reactjs,React Native,我目前正在React Native中构建一个聊天应用程序,并试图在加载messagelist时将屏幕定位到最后一条消息上。这个视图构建时使用的组件是FlatList,我知道它为我们提供了即时的scrollToIndex和ScrollToEnd功能,但在componentDidMount内部调用它时,这似乎不能很好地工作。除此之外,滚动功能似乎是让它正常工作的另一个障碍 我还尝试使用initialScrollIndex属性,并将最后一个索引作为属性传递。实际上,它似乎在一瞬间起作用,但屏幕会快速返
<ScreenWrapper>
<FlatList
style={{
width: WIDTH,
marginLeft: -20,
}}
data={messages}
initialScrollIndex={messages.length - 1}
renderItem={this.renderItem}
keyExtractor={item => item.id}
getItemLayout={this.itemLayout}
/>
</ScreenWrapper>
项目id}
getItemLayout={this.itemLayout}
/>
- 使用flatlist scrollToIndex函数。在componentDidMount中使用ref调用该函数
是一个聊天应用程序的伟大,应该有什么你正在寻找