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
Я пытаюсь стиль самой панели навигации, например, изменить его цвет, а не его компоненты. Будет ли способ вокруг этого с моим подходом? Например, если на определенном маршруте панель навигации синяя, а на другой навигационной панели она будет красной. –
Проверка, что вы получили мой последний комментарий. Пожалуйста, дайте мне знать. –
Похоже, что единственный способ состоит в том, чтобы обернуть панель навигации и использовать сокращение или какой-либо другой способ для получения текущего маршрута: https://github.com/facebook/react-native/issues/2560#issuecomment-139919812. В этом выпуске рассказывается об использовании решения на основе потока https://github.com/facebook/react-native/issues/3926#issuecomment-154688017. – zackify