Итак, я работаю над MaterialBottomTabNavigator и у меня возникла небольшая проблема. У меня есть 4 экрана на нем. Код такой, как показано ниже:
const bottomNavigator = createMaterialBottomTabNavigator(
{
home: {
screen: HomeScreen,
navigationOptions : {
tabBarIcon: <Icon type="FontAwesome" name="home" style={{color:'#fff'}} />,
title:'Home',
}
}
trending: {
screen: TrendingScreen,
navigationOptions : {
tabBarIcon: <Icon type="FontAwesome" name="fire" style={{color:'#fff'}} />,
title:'Trending'
}
},
profile: {
screen: ProfileScreen,
navigationOptions : {
tabBarIcon: <Icon type="FontAwesome" name="id-badge" style={{color:'#fff'}} />,
title:'Profile'
}
},
settings: {
screen: SettingsScreen ,
navigationOptions : {
tabBarIcon: <Icon type="FontAwesome" name="cog" style={{color:'#fff'}} />,
title:'Settings'
}
}
},
{
initialRouteName: 'home',
activeColor: '#f0edf6',
inactiveColor: '#3e2465',
barStyle: { backgroundColor: UI_COLORS['foxy'] },
}
);
Теперь я могу отправлять информацию между этими экранами прямо. HomeScreen, TrendingScreen, ProfileScreen, но проблема, которую я получаю, заключается в том, что мне приходится открывать другой экран, который не является его частью. Как мне перейти к экрану, сказать «DiffScreen» с любого из этих экранов. т.е. предположим, что я на HomeScreen, и я хочу перейти на 'DiffScreen', который не является частью bottomNavigator. Любая помощь, как я могу добраться до этого экрана? Что-то вроде this.props.navigation.navigate('DiffScreen')
или что-то в этом роде. Я просто ощущаю здесь немного избыточности, но было бы лучше, если бы я мог обойтись без него.