我将带有钩子的react本机项目从所有类组件转换为功能组件。我有一个带有ScrollView的消息页面,该页面自动滚动到底部。如何将其转换为功能组件?使用ref和this.scrollView会导致错误。
<ScrollView
ref={ref => this.scrollView = ref}
onContentSizeChange={(contentWidth, contentHeight)=> {this.scrollView.scrollToEnd({animated: true})}}
>
{...content...}
</ScrollView>
答案 0 :(得分:0)
在组件主体中:
function App(props) {
const scrollViewRef = useRef();
...
在组件上:
<ScrollView
ref={scrollViewRef}
onContentSizeChange={(contentWidth, contentHeight)=> {scrollViewRef.current.scrollToEnd({animated: true})}}
>
{...content...}
</ScrollView>
答案 1 :(得分:0)
const scrollRef = useRef();在函数App()
中并在onPress中使用 scrollRef.current?.scrollTo({ y:0, 动画:真实, });