我想爲我的Navigator
設置NavigationBar
。當我顯示一個靜態標題時,它是可以的。但是,當我嘗試異步設置標題時(例如,當我訪問用戶的配置文件路徑時,我從API獲取用戶的顯示名稱,並在API調用promise做出解析時設置this.props.navigation.title
),標題變得非常激動。異步設置NavigationBar的標題
這個問題的正確方法是什麼?
這裏是我的組件(連接到Redux的商店),處理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);