route
未定义,因为该代码中的任何位置都未提供该变量。如果你想改变造型,但仍使用的导航栏,你最好是这样写的:https://stackoverflow.com/a/33697459/1487687
你NavigationBarRouteMapper
对象将注入到每个功能的路线:
var NavigationBarRouteMapper = {
LeftButton: function(route, navigator, index, navState){
return(
<Text>{ route.leftButton }</Text>
)
},
Title: function(route, navigator, index, navState){
return(
<Text>{ route.title }</Text>
)
},
RightButton: function(route, navigator, index, navState){
return(
<Text>{ route.rightButton }</Text>
)
}
}
如果您需要直接设置栏的样式,你最好制作自己的导航栏组件。我想看看这个源代码来得到一个想法:https://github.com/react-native-community/react-native-navbar
我试图风格的导航栏本身,如改变其颜色,而不是它的组件。用我的方法会有办法解决吗?就像在特定的路线上一样,导航栏是蓝色的,而在另一个导航栏上则是红色的。 –
检查以确定您是否收到了我的最新评论。请告诉我。 –
看起来像唯一的方法是包装导航栏,并使用REDX或其他方式获取当前路线:https://github.com/facebook/react-native/issues/2560#issuecomment-139919812。这个问题谈论使用基于通量的解决方案https://github.com/facebook/react-native/issues/3926#issuecomment-154688017。 – zackify