我希望在呈现不同的组件时显示backgroundColor
Navigator.NavigationBar
,因此我尝试从各种标志中更改css,但我始终从this.props.style
获取数字类型,
也许我没有明确表达,请在下面提供一些代码。
class NavigationBar extends Navigator.NavigationBar {
render() {
var routes = this.props.navState.routeStack;
if (routes.length) {
var route = routes[routes.length - 1];
console.log(this.props.style); // output 92 always
// so below code doesn't work, I can't override css :(
if(route.flag === 1) {
Object.assign(this.props.style, {backgroundColor: 'yellow'});
} else if(route.flag ===2) {
Object.assign(this.props.style, {backgroundColor: 'blue'});
}
}
return super.render();
}
}
并在我的例子中使用,
render: function(){
return (
<Navigator
initialRoute={{
component: YellowComponent,
flag: 1,
}}
renderScene={this.renderScene}
navigationBar={
<NavigationBar
routeMapper={NavigationBarRouteMapper}
style={styles.navBar}
/>
}
/>
);
}
任何人都可以帮助我吗?
谢谢你的时间。