J'essaie de définir un NavigationBar
pour mon Navigator
. Lorsque j'affiche un titre statique, c'est OK. Toutefois, lorsque j'essaie de définir le titre de façon asynchrone (par exemple, lorsque j'accède à l'itinéraire du profil de l'utilisateur, j'obtiens le nom d'affichage de l'utilisateur à partir de l'API et définissez this.props.navigation.title
lorsque la promesse d'appel de l'API se résout).Définition du titre de NavigationBar de façon asynchrone
Quelle serait l'approche appropriée pour ce problème?
Voici mon composant (qui est relié au magasin redux) qui gère NavigationBar
:
import React from 'react-native';
let {
Component,
Navigator,
View
} = React;
import {connect} from 'react-redux';
let NavigationBarRouteMapper = {
Title: (route, navigator, index, navState) => {
return (
<Text style={{marginTop: 15, fontSize: 18, color: colors.white}}>{this.props.navigation.title}</Text>
);
}
};
class App extends Component {
render() {
return (
<View style={{flex: 1}}>
<Navigator
ref={'navigator'}
configureScene={...}
navigationBar={
<Navigator.NavigationBar routeMapper={ NavigationBarRouteMapper } />
}
renderScene={(route, navigator) => {...}}
/>
</View>
);
}
}
export default connect(state => state)(App);