【发布时间】:2022-01-01 05:34:11
【问题描述】:
我正在使用 Expo 和 react-navigation 构建一个 react-native 应用程序,该应用程序目前有两个导航器,一个对经过身份验证的用户可见,一个仅对未经身份验证的用户可见,例如登录页面。
这是导航结构:
function Navigation({ isLoggedIn }) {
return (
<NavigationContainer>
{isLoggedIn ? (
<Stack.Navigator>
<Stack.Screen name="home" component={Home}></Stack.Screen>
<Stack.Screen name="public" component={Public}></Stack.Screen>
</Stack.Navigator>
) : (
<Stack.Navigator>
<Stack.Screen name="login" component={Login}></Stack.Screen>
<Stack.Screen name="public" component={Public}></Stack.Screen>
</Stack.Navigator>
)}
</NavigationContainer>
);
}
如您所见,两个导航器中都有一个名为“public”的屏幕出现两次,因为我希望人们无论身份验证状态如何都能够查看此组件,这是正确的做法吗?
【问题讨论】:
标签: reactjs react-native expo react-navigation