React native React Native:动作';导航';带有效载荷(blahblah)未由任何导航器处理。您是否有一个名为';家';?

React native React Native:动作';导航';带有效载荷(blahblah)未由任何导航器处理。您是否有一个名为';家';?,react-native,react-navigation-stack,React Native,React Navigation Stack,我试图在单击“登录”按钮时将登录屏幕更改为主屏幕。用户已经创建并显示在Firebase的“身份验证”选项卡以及我为其创建的云Firestore数据库中。我认为我的导航部分有问题,但我不相信我使用的是嵌套导航器。。。下面是App.js上的导航代码。如果有人能看看这段代码,看看你是否注意到它的任何问题,那将不胜感激。不知道从这里到哪里转 <NavigationContainer> <Stack.Navigator> { user ? ( <Sta

我试图在单击“登录”按钮时将登录屏幕更改为主屏幕。用户已经创建并显示在Firebase的“身份验证”选项卡以及我为其创建的云Firestore数据库中。我认为我的导航部分有问题,但我不相信我使用的是嵌套导航器。。。下面是App.js上的导航代码。如果有人能看看这段代码,看看你是否注意到它的任何问题,那将不胜感激。不知道从这里到哪里转

<NavigationContainer>
  <Stack.Navigator>
    { user ? (
      <Stack.Screen name="Home">
        {props => <HomeScreen {...props} extraData={user} />}
      </Stack.Screen>
    ) : (
      <>
        <Stack.Screen name="Login" component={LoginScreen} />
        <Stack.Screen name="Registration" component={RegistrationScreen} />
      </>
    )}
  </Stack.Navigator>
</NavigationContainer>

谢谢你的帮助

未定义用户时,主屏幕不会呈现,因此,当您从LoginScreen导航到主屏幕时,主屏幕会显示错误。您可以无条件地呈现主屏幕,并将initialScreen设置为Login

<NavigationContainer>
  <Stack.Navigator initialRouteName="LoginScreen">
      <Stack.Screen name="Home">
        {props => <HomeScreen {...props} extraData={user} />}
      </Stack.Screen>
        <Stack.Screen name="Login" component={LoginScreen} />
        <Stack.Screen name="Registration" component={RegistrationScreen} />
  </Stack.Navigator>
</NavigationContainer>

{props=>}
<NavigationContainer>
  <Stack.Navigator initialRouteName="LoginScreen">
      <Stack.Screen name="Home">
        {props => <HomeScreen {...props} extraData={user} />}
      </Stack.Screen>
        <Stack.Screen name="Login" component={LoginScreen} />
        <Stack.Screen name="Registration" component={RegistrationScreen} />
  </Stack.Navigator>
</NavigationContainer>