gpt4 book ai didi

javascript - React-native:FlatList 获取滚动引用

转载 作者:行者123 更新时间:2023-11-29 10:05:41 25 4
gpt4 key购买 nike

我目前正在使用 React Native 构建一个应用:

这是我的平面列表:

    <FlatList
ref={"myFlatList"}
data={data}
keyExtractor={this._keyExtractor}
renderItem={this._renderItem}
/>

在这个函数中我想滚动到一个特定的索引:

  _enableTVEventHandler() {
this._tvEventHandler = new TVEventHandler();
this._tvEventHandler.enable(this, function(cmp, evt) {
this.refs["myFlatList"].scrollToIndex({viewPosition: 0.5, index: 2});
}.bind(this));
}

但是我有一个错误:无法读取未定义的属性“scrollToIndex”

最佳答案

我能看到的两件事,

  1. 您无需在 {} 中定义字符串引用。但是 React 文档建议您使用 ref 回调

做类似的事情

 <FlatList
ref={(list) => this.myFlatList = list}
data={data}
keyExtractor={this._keyExtractor}
renderItem={this._renderItem}
/>
  1. 您需要绑定(bind)您的函数才能引用正确的上下文

照做

_enableTVEventHandler = () => {
this._tvEventHandler = new TVEventHandler();
this._tvEventHandler.enable(this, function(cmp, evt) {
this.myFlatList.scrollToIndex({viewPosition: 0.5, index: 2});
}.bind(this));
}

constructor(props) {
super(props) ;
this._enableTVEventHandler = this._enableTVEventHandler.bind(this);
}

关于javascript - React-native:FlatList 获取滚动引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43936486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com