我正在尝试在renderItem
调用FlatList
时操纵onViewableItemsChanged
下的组件。
我的代码如下所示:
<FlatList
data={this.props.data.allPosts.nodes}
ListHeaderComponent={() => this.props.listHeader}
onViewableItemsChange={this.onViewableItemsChanged}
renderItem={({item}) =>
<View style={{ marginBottom: 12 }}>
<Video lights={true}
ref={(ref) => this[`postRef_${item.key}`] = ref}
/>
</View>
}
/>
onViewableItemsChanged = ({viewableItems}) => {
viewableItems.forEach((item) => {
const { isViewable, key } = item;
if(isViewable) {
const ref = this[`swiperRef_${key}`];
if(!ref) return console.log('Ref not found');
console.log('ref', ref)
ref.paused = false
}
});
}
我的问题是引用不断返回undefined。有什么方法吗?
答案 0 :(得分:0)
我不确定你的意思&#34;参考&#34;但如果你指的是const ref = this[swiperRef_${key}];
您是否已通过
将this
绑定到onViewableItemsChanged
this.onViewableItemsChanged = this.onViewableItemsChanged.bind(this)
或
onViewableItemsChange={this.onViewableItemsChanged.bind(this}
?