forked from ej11240/Meetcody
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApp.js
68 lines (57 loc) Β· 1.96 KB
/
App.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import 'react-native-gesture-handler';
import React, { useState } from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
import AppContext from './src/context/AppContext';
import MainSideMenu from "./src/screen/mainpage/MainSideMenu";
import SignInScreen from './src/screen/loginpage/SignInScreen';
import SplashScreen from './src/screen/SplashScreen';
import SignUpScreen from './src/screen/loginpage/SignUpScreen';
import ResetPasswordScreen from './src/screen/loginpage/ResetPasswordScreen';
import AxiosTestScreen from './src/screen/loginpage/AxiosTestScreen';
import tempScreen from './src/screen/loginpage/tempScreen';
export default function App() {
const [isLoading, setIsLoading] = useState();
const [userToken, setUserToken] = useState('');
const [isLoggedIn, setIsLoggedIn] = useState(false);
const userSettings = {
isLoading: isLoading,
isLoggedIn: isLoggedIn,
userToken: userToken,
setIsLoading,
setUserToken,
setIsLoggedIn,
};
if (isLoading) {
return <SplashScreen />;
}
return (
<AppContext.Provider value={userSettings}>
<NavigationContainer>
<RootStack.Navigator mode="card">
{Object.entries({
// νλ²νκ² μ€ν¬λ¦° μ¬μ©νκΈ°
...commonScreens,
// μ‘°κ±΄λΆ μ€ν¬λ¦° μ¬μ©νκΈ°
...(isLoggedIn ? userScreens : authScreens),
}).map(([name, component]) => (
<RootStack.Screen name={name} component={component} options={{ headerShown: false }} />
))}
</RootStack.Navigator>
</NavigationContainer>
</AppContext.Provider>
);
}
const commonScreens = {
};
const authScreens = {
SignUp: SignUpScreen,
ResetPassword: ResetPasswordScreen,
SignIn: SignInScreen,
AxiosTest: AxiosTestScreen,
tempScreen: tempScreen,
};
const userScreens = {
MainSideMenu: MainSideMenu
};
const RootStack = createStackNavigator();