React Native Scrollview 中的 scrollToEnd

scrollToEnd in React Native Scrollview

我正在使用 React Native (expo) 开发一个应用程序,它必须滚动到 ScrollView 组件的末尾。 scrollTo()scrollToEnd() 我都试过了,但都不起作用。错误消息总是某种“...不是函数”。

我已经尝试了我找到的任务的每个示例,但仍然无法正常工作。 我尝试了使用 ref 和函数的不同方式。 例如网络上显示最多的模式之一:

const scrollRef = useRef()
<ScrollView ref={scrollRef} onContentSizeChange={scrollRef.current.scrollToEnd()}>

这个错误信息是:"TypeError: undefined is not an object (evaluating 'scrollRef.current.scrollToEnd')" (useRef() 是从 react 导入的)

我也尝试从 return 部分之外的函数通过 scrollTo() 滚动到末尾,但这总是导致 "scrollTo() is not difined "(我尝试 scrollToEnd() 时也是一样)

我在我的 App.js 中使用的是一个函数而不是 class,这对这种特定情况有什么影响吗?

请随时分享您的想法,即使它们可能不是那么具体,一切都可能有所帮助。

祝你有愉快的一天。

改变

onContentSizeChange={scrollRef.current.scrollToEnd()}

onContentSizeChange={() => scrollRef.current.scrollToEnd()}

详细了解 Render 中的箭头函数 here