Я использую 'createMaterialTopTabNavigator для работы вкладки в моем приложении.Он работает нормально и успешно переходит к initialRouteName или экрану по умолчанию ( Первый экран навигатора вкладок ).
Мои маршруты. Js
const StackNavigator = defaultRoute =>
createStackNavigator(
{
Auth: {
screen: Auth
},
Home: {
screen: Home
},
ClubDashboard: {
screen: ClubDashboard
},
MemberHome: {
screen: MemberHomeTabNavigator
},
ClubHome: {
screen: ClubHomeTabNavigator
},
Profile: {
screen: Profile
},
MemberContributions: {
screen: MemberContributions
},
MemberLoans: {
screen: MemberLoans
},
ClubContributions: {
screen: ClubContributions
},
ClubLoans: {
screen: ClubLoans
},
ClubExpenses: {
screen: ClubExpenses
}
},
{
initialRouteName: defaultRoute
}
);
const MemberHomeTabNavigator = createMaterialTopTabNavigator(
{
Contributions: {
screen: MemberContributions
},
Loans: {
screen: MemberLoans
},
Profile: {
screen: Profile
}
},
{
tabBarOptions: {
activeTintColor: GLOBAL_CONFIG.COLOR.THEME,
inactiveTintColor: GLOBAL_CONFIG.COLOR.BLACK,
labelStyle: {
fontSize: 11
},
style: {
backgroundColor: GLOBAL_CONFIG.COLOR.WHITE
},
indicatorStyle: {
backgroundColor: GLOBAL_CONFIG.COLOR.BLACK
}
},
},
);
Я использую this.props.navigation.push ('MemberHome') для перехода к экрану вкладок.
Существует несколько вызовов "this.props.navigation.push ('MemberHome"') "в моем коде (один для ссуды, один для вклада и один для профиля)
Я хочу вот что:
-> Экран ссуд на вкладке долженбыть активным или initialRoute, когда я нажимаю для доступа к ссудам
-> Экран вкладок во вкладке должен быть активным или initialRoute, когда я нажимаю для доступа к вкладам
-> Экран профиля во вкладке должен быть активным или initialRouteкогда я нажимаю, чтобы получить доступ к профилю
Как я могу динамически изменять начальные экраны / имена вкладок / экранов в createMaterialTopTabNavigator?