Kombinieren Sie Stack Navigator mit Bottom Tab Navigator in React Native

Sep 29 2020

Ich möchte wissen, wie man den unteren Tab-Navigator mit dem Stack-Navigator im Home Navigator in app.js kombiniert. Hier ist mein Code

import React from 'react';
import {createAppContainer} from 'react-navigation';
import {createStackNavigator} from 'react-navigation-stack';
import Signup from './screens/signup';
import Login from './screens/login';
import Home from './screens/Home';
import Loading from './screens/Loading';
import Welcome from './screens/Welcome';
import ForgotPassword from './screens/ForgotPassword';

export default class App extends React.Component {
  render() {
    return <AppContainer />;
  }
}

const navigator = createStackNavigator({
  loading: {
    screen: Loading,
    navigationOptions: {
      headerShown: false,
      headerTransparent: true,
    },
  },
  Welcome: {
    screen: Welcome,
    navigationOptions: {
      headerShown: false,
      headerTransparent: true,
    },
  },
  signup: {
    screen: Signup,
    navigationOptions: {
      headerShown: false,
      headerTransparent: true,
    },
  },
  login: {
    screen: Login,
    navigationOptions: {
      headerShown: false,
      headerTransparent: true,
    },
  },
  Home: {
    screen: Home,
    navigationOptions: {
      headerShown: false,
      headerTransparent: true,
    },
  },
  InitialRouteName: Loading,
});

const AppContainer = createAppContainer(navigator);

Haben Sie einen Vorschlag, den Navigator für die untere Registerkarte in diesen Code aufzunehmen? Ich möchte wissen, wie man den Tab Bottom Navigator mit dem Stack Navigator in app.js kombiniert (mit dem Bottom Tab Navigator nach Hause rufen). Danke

Antworten

AroldoGoulart Sep 29 2020 at 12:46

Sie können einen tabNavigator erstellen und wie jede andere Route festlegen.

Obs: Arbeiten Sie auch für drawerNavigator.

Beispiel:

const MainTab = TabNavigator(tabs, {
  initialRouteName: initialRouteName,
  tabBarPosition: "bottom",
});


const RootNavigator = StackNavigator(
  {
    Root: {
      screen: MainTab,
      navigationOptions: {
        headerMode: "none"
      }
    },
    /* Other Screens */
    Login: { screen: LoginScreen },
  }
)

const AppContainer = createAppContainer(RootNavigator);

Hinweis: Dies funktioniert auch für drawerNavigator.