J'essaie d'accéder à this.refs pour pouvoir faire défiler vers le haut d'une liste non hiérarchique mais ce n'est pas défini.React Native - Comment Accéder Refs?
Mon méthode render est la suivante:
render() {
return (
<View style={styles.container}>
{ this.state.loading &&
<ActivityIndicator />
}
{ !this.state.loading &&
<FlatList
ref='flatList'
data={this.state.facebookPosts}
onEndReachedThreshold={0}
onEndReached={({ distanceFromEnd }) => {
this._getFacebookPosts(this.state.nextPost);
}}
renderItem={({item}) => <FacebookPost
date={item.created_time}
message={item.message}
image={item.attachments.data[0].media.image.src}
url={item.link}
/>}
/>
}
</View>
)
}
}
Comme vous pouvez le voir, je l'arbitre fixé comme 'flatList'. J'ai alors une barre d'onglets que lorsque vous cliquez sur l'un des onglets, il est destiné à faire défiler vers le haut de la liste. (Je suis en train juste pour ne pas déconnecter les consoler this.refs mais s'Undefined)
static navigationOptions = {
tabBarLabel: 'News',
showIcon: true,
tabBarIcon: ({ tintColor }) => (
<Image
source={require('../assets/images/newspaper-icon.png')}
style={[styles.icon, {tintColor: tintColor}]}
/>
),
tabBarOnPress: (scene, jumpToIndex) => {
// this.refs.listRef.scrollToOffset({x: 0, y: 0, animated: true})
console.log(this.refs);
jumpToIndex(scene.index);
}
};
Que dois-je faire différemment pour obtenir this.refs de ne pas être non défini dans cette fonction de onTabBarPress?
https://facebook.github.io/react/docs/refs-and -the-dom.html – euvl
@euvl Ouais ça ne m'aide pas. J'ai lu que déjà – Tenatious
cela fonctionne-t-il si vous essayez 'ref = {flatList => this.flatList = flatList}' et utilisez 'this.flatList' dans votre fonction? –