diff --git a/App.js b/App.js
index 2ebec8b..1012493 100644
--- a/App.js
+++ b/App.js
@@ -1,23 +1,15 @@
-import { StatusBar } from 'expo-status-bar';
-import { StyleSheet, Text, View } from 'react-native';
import { QueryClientProvider, QueryClient } from 'react-query';
+import { NavigationContainer } from '@react-navigation/native';
+import Root from './src/Navigations/Root';
const queryClient = new QueryClient();
export default function App() {
return (
- {/*
- */}
+
+
+
);
}
-
-const styles = StyleSheet.create({
- container: {
- flex: 1,
- backgroundColor: '#fff',
- alignItems: 'center',
- justifyContent: 'center',
- },
-});
diff --git a/src/Navigations/Root.js b/src/Navigations/Root.js
index e69de29..e85ffd7 100644
--- a/src/Navigations/Root.js
+++ b/src/Navigations/Root.js
@@ -0,0 +1,20 @@
+import { createNativeStackNavigator } from '@react-navigation/native-stack';
+import Stacks from './Stacks';
+import Tabs from './Tabs';
+
+const Stack = createNativeStackNavigator();
+
+const Root = () => {
+ return (
+
+
+
+
+ );
+};
+
+export default Root;
diff --git a/src/Navigations/Stack.js b/src/Navigations/Stack.js
deleted file mode 100644
index e69de29..0000000
diff --git a/src/Navigations/Stacks.js b/src/Navigations/Stacks.js
new file mode 100644
index 0000000..af2660d
--- /dev/null
+++ b/src/Navigations/Stacks.js
@@ -0,0 +1,17 @@
+import { createNativeStackNavigator } from '@react-navigation/native-stack';
+
+import { SignupPage, LoginPage, EditPage } from '../screen/Index';
+
+const Stack = createNativeStackNavigator();
+
+const Stacks = () => {
+ return (
+
+
+
+
+
+ );
+};
+
+export default Stacks;
diff --git a/src/Navigations/Tab.js b/src/Navigations/Tab.js
deleted file mode 100644
index e69de29..0000000
diff --git a/src/Navigations/Tabs.js b/src/Navigations/Tabs.js
new file mode 100644
index 0000000..12b197b
--- /dev/null
+++ b/src/Navigations/Tabs.js
@@ -0,0 +1,44 @@
+import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
+import { MyPage, MainPage } from '../screen/Index';
+import { Entypo } from '@expo/vector-icons';
+import { FontAwesome } from '@expo/vector-icons';
+
+const Tab = createBottomTabNavigator();
+
+const Tabs = () => {
+ return (
+
+
+ focused ? (
+
+ ) : (
+
+ ),
+ }}
+ name="메인 페이지"
+ component={MainPage}
+ />
+
+
+ focused ? (
+
+ ) : (
+
+ ),
+ }}
+ name="마이 페이지"
+ component={MyPage}
+ />
+
+ );
+};
+
+export default Tabs;
diff --git a/src/screen/EditPage.jsx b/src/screen/EditPage.jsx
index e69de29..c60a473 100644
--- a/src/screen/EditPage.jsx
+++ b/src/screen/EditPage.jsx
@@ -0,0 +1,15 @@
+import { View, Text, TouchableOpacity } from 'react-native';
+
+const EditPage = ({ navigation: { navigate } }) => {
+ return (
+
+ navigate('Tabs', { screen: '마이 페이지' })}
+ >
+ 마이 페이지로
+
+
+ );
+};
+
+export default EditPage;
diff --git a/src/screen/Index.js b/src/screen/Index.js
index e69de29..f36952d 100644
--- a/src/screen/Index.js
+++ b/src/screen/Index.js
@@ -0,0 +1,7 @@
+import SignupPage from './SignupPage';
+import MyPage from './MyPage';
+import MainPage from './MainPage';
+import LoginPage from './LoginPage';
+import EditPage from './EditPage';
+
+export { SignupPage, MyPage, MainPage, LoginPage, EditPage };
diff --git a/src/screen/LoginPage.jsx b/src/screen/LoginPage.jsx
index e69de29..32a96db 100644
--- a/src/screen/LoginPage.jsx
+++ b/src/screen/LoginPage.jsx
@@ -0,0 +1,18 @@
+import { TouchableOpacity, View, Text } from 'react-native';
+
+const LoginPage = ({ navigation: { navigate } }) => {
+ return (
+
+ navigate('Tabs', { screen: '메인 페이지' })}
+ >
+ 로그인
+
+ navigate('회원가입')}>
+ 회원가입
+
+
+ );
+};
+
+export default LoginPage;
diff --git a/src/screen/MainPage.jsx b/src/screen/MainPage.jsx
index e69de29..a919076 100644
--- a/src/screen/MainPage.jsx
+++ b/src/screen/MainPage.jsx
@@ -0,0 +1,15 @@
+import { View, Text, TouchableOpacity } from 'react-native';
+
+const MainPage = ({ navigation: { navigate } }) => {
+ return (
+
+ navigate('Stacks', { screen: '로그인' })}
+ >
+ 로그아웃
+
+
+ );
+};
+
+export default MainPage;
diff --git a/src/screen/MyPage.jsx b/src/screen/MyPage.jsx
index e69de29..a754974 100644
--- a/src/screen/MyPage.jsx
+++ b/src/screen/MyPage.jsx
@@ -0,0 +1,21 @@
+import { View, Text, TouchableOpacity } from 'react-native';
+
+const MyPage = ({ navigation: { navigate } }) => {
+ return (
+
+ navigate('Stacks', { screen: '수정 페이지' })}
+ >
+ 수정 페이지로
+
+
+ navigate('Stacks', { screen: '로그인' })}
+ >
+ 로그아웃
+
+
+ );
+};
+
+export default MyPage;
diff --git a/src/screen/SignupPage.jsx b/src/screen/SignupPage.jsx
index e69de29..c65055c 100644
--- a/src/screen/SignupPage.jsx
+++ b/src/screen/SignupPage.jsx
@@ -0,0 +1,18 @@
+import { View, Text, TouchableOpacity } from 'react-native';
+
+const SignupPage = ({ navigation: { navigate } }) => {
+ return (
+
+ navigate('Tabs', { screen: '메인 페이지' })}
+ >
+ 회원가입
+
+ navigate('로그인')}>
+ 로그인 페이지로
+
+
+ );
+};
+
+export default SignupPage;