【发布时间】:2019-10-17 19:38:38
【问题描述】:
对于我正在进行的项目,我需要创建一个组件,用户可以在其中向处于状态的数组添加条目,并使用SectionList 来显示这些条目。此外,我需要 SectionList 在输入后立即向下滚动到最新条目。 Please check out this snack for an example
列表本身会显示所有条目并在添加新条目后更新,但是一旦列表包含的内容超出屏幕可以显示的范围,它只能向下滚动到倒数第二个,我真的需要滚动到最后一个。
我尝试了很多东西,包括等待 setState、定义 contentContainerStyle、将整个东西转换为 VirtualizedList 和 ScrollView,我能想到的一切,但我根本无法让它滚动到最后一个条目。
问题:如何让我的 SectionList 滚动到当前超出 SectionList 组件范围的最后一项?
更新
我知道这个问题是由调用 scrollToLocation 时 SectionList 不包含该项目引起的。解决方案的关键似乎是等待列表的重新渲染
更新 2 SetState 有一个回调也不能解决这个问题。但是,this 评论中的解决方案有效。它的问题在于它仅适用于 .js 文件,而我正在整个项目中使用 .tsx 文件。我该如何克服呢?
【问题讨论】:
标签: react-native react-native-sectionlist