Да, это действительно правильно. Но вы понимаете, как должен работать DrawerNavigator
. Вы не можете открыть ящик, если вы не в ящике.
Я вижу, что у вас есть HomeScreen
, определенный в 2 навигаторах. И у меня есть ощущение, что вы хотите иметь возможность перемещаться от Home
к / от MyAccount
, используя DrawerNavigator
, что означает, что оба эти маршрута должны быть внутри DrawerNavigator
, и вы хотите, чтобы HomeScreen был первый экран, который виден по умолчанию.
const DrawerNavigator = createDrawerNavigator(
{
Home: HomeScreen,
MyAccount: MyAccountScreen,
}
);
, который у вас уже есть. Ваше заблуждение заключается в том, что для ваших текущих маршрутов вам не нужен AppNavigator
, вы можете просто переименовать вышеупомянутый в AppNavigator
и ваша навигационная конфигурация должна выглядеть примерно так:
const AppNavigator = createDrawerNavigator(
{
Home: HomeScreen,
MyAccount: MyAccountScreen,
}
);
const AppContainer = createAppContainer(
createSwitchNavigator(
{
AuthNavigator,
AppNavigator,
DrawerNavigator,
},
{
initialRouteName: AuthNavigator,
}
)
);
И это все. Теперь, когда вы перейдете к AppNavigator
, первым отображаемым маршрутом будет Home
, а при открытии ящика просто отобразится ящик, и вы автоматически не перейдете к MyAccountScreen
.
.