Advertisement
Guest User

MyTodosMainRoutes

a guest
Oct 23rd, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import React from 'react';
  2. import { SafeAreaView, View, Button, TouchableOpacity, Text } from 'react-native';
  3. import { createAppContainer, createSwitchNavigator } from 'react-navigation';
  4. import { createStackNavigator } from 'react-navigation-stack';
  5. import { createDrawerNavigator, DrawerNavigatorItems } from 'react-navigation-drawer';
  6. import { firebase } from '@react-native-firebase/auth';
  7.  
  8. import Signup from './auth/Signup';
  9. import Login from './auth/Login';
  10. import Home from './main/Home';
  11.  
  12. const AuthStack = createStackNavigator(
  13. {
  14.     Login: { screen: Login },
  15.     Signup: { screen: Signup }
  16. },
  17. {
  18.     headerMode: 'none'
  19. }
  20. );
  21.  
  22. async function logout(props) {
  23.     await firebase.auth().signOut();
  24.     props.navigation.navigate('Login');
  25. }
  26.  
  27. const MainStack = createDrawerNavigator({
  28.     Home: { screen: Home }
  29. },
  30. {
  31.     contentComponent:(props) => (
  32.         <View style={{flex:1}}>
  33.             <SafeAreaView forceInset={{ top: 'always', horizontal: 'never' }}>
  34.                 <DrawerNavigatorItems {...props} />
  35.                 <TouchableOpacity
  36.                 onPress={() => {logout(props)}}
  37.                 style={{paddingLeft: 16}}>
  38.                     <Text>Logout</Text>
  39.                 </TouchableOpacity>
  40.             </SafeAreaView>
  41.         </View>
  42.     ),
  43.     drawerOpenRoute: 'DrawerOpen',
  44.     drawerCloseRoute: 'DrawerClose',
  45.     drawerToggleRoute: 'DrawerToggle'
  46. });
  47.  
  48. const Navigators = createSwitchNavigator({
  49.     Auth: { screen: AuthStack },
  50.     Main: { screen: MainStack }
  51. });
  52.  
  53. export default createAppContainer(Navigators);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement