首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有信息路由的多栈导航器

具有信息路由的多栈导航器
EN

Stack Overflow用户
提问于 2021-08-02 19:16:27
回答 1查看 477关注 0票数 0

因此,我创建了具有多个堆栈导航器的RN项目。

  • 登录路由
  • 非登录路由

所以我没有登录像这样的线路

代码语言:javascript
复制
import React from "react"
import { createNativeStackNavigator } from "react-native-screens/native-stack"
import { Introduction, Login } from "@src/screens/loggedOut"

const Stack = createNativeStackNavigator()

const defaultOptions = {
  headerShown: false
}
const LoggedOutRoutes = () => {
  return (
    <Stack.Navigator initialRouteName="introduction">
      <Stack.Screen name="introduction" component={Introduction} options={defaultOptions} />
      <Stack.Screen name="login" component={Login} options={defaultOptions} />
    </Stack.Navigator>
  )
}

export default LoggedOutRoutes

并以同样的方式登录

代码语言:javascript
复制
import React from "react"
import { createNativeStackNavigator } from "react-native-screens/native-stack"
import {Home,Settings } from "@src/screens/loggedIn"

const Stack = createNativeStackNavigator()

const defaultOptions = {
  headerShown: false
}
const LoggedIn = () => {
  return (
    <Stack.Navigator initialRouteName="home">
      <Stack.Screen name="home" component={Home} options={defaultOptions} />
      <Stack.Screen name="settings" component={Settings} options={defaultOptions} />
    </Stack.Navigator>
  )
}

export default LoggedIn

现在,我希望根据用户登录与否加载这些根中的任何一个。

我该怎么做?

EN

回答 1

Stack Overflow用户

发布于 2021-08-03 19:53:56

假设您保存了登录状态,您可以将导航从“@react导航/本机”包装到NavigationContainer组件中,并有条件地呈现正确的导航。就像这样:

代码语言:javascript
复制
<NavigationContainer>

  {userLoggedIn ? <LoggedIn /> : <LoggedOutRoutes />}

</NavigationContainer>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68626917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档