Showing
7 changed files
with
112 additions
and
22 deletions
... | @@ -8,6 +8,7 @@ | ... | @@ -8,6 +8,7 @@ |
8 | <title><%= htmlWebpackPlugin.options.title %></title> | 8 | <title><%= htmlWebpackPlugin.options.title %></title> |
9 | <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900"> | 9 | <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900"> |
10 | <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css"> | 10 | <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css"> |
11 | + <meta name="viewport" content="width=device-width,initial-scale=1.0"> | ||
11 | </head> | 12 | </head> |
12 | <body> | 13 | <body> |
13 | <noscript> | 14 | <noscript> | ... | ... |
... | @@ -14,4 +14,8 @@ function registerUser(userData) { | ... | @@ -14,4 +14,8 @@ function registerUser(userData) { |
14 | return axios.post('/api/login', userData); | 14 | return axios.post('/api/login', userData); |
15 | } | 15 | } |
16 | 16 | ||
17 | - export { registerUser, loginUser }; | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
17 | +function dropbox(userData){ | ||
18 | + return axios.get('/api/dropbox', userData); | ||
19 | +} | ||
20 | + | ||
21 | + export { registerUser, loginUser, dropbox }; | ||
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -17,19 +17,16 @@ | ... | @@ -17,19 +17,16 @@ |
17 | <v-subheader inset>Folders</v-subheader> | 17 | <v-subheader inset>Folders</v-subheader> |
18 | 18 | ||
19 | <v-list-item | 19 | <v-list-item |
20 | - v-for="item in items" | 20 | + v-for="item in this.$store.getters.folderL" |
21 | :key="item.title" | 21 | :key="item.title" |
22 | - @click="" | 22 | + @click="$router.push({name: 'Folder'})" |
23 | > | 23 | > |
24 | <v-list-item-avatar> | 24 | <v-list-item-avatar> |
25 | - <v-icon | 25 | + <v-icon>mdi-folder</v-icon> |
26 | - | ||
27 | - >{{item.iconClass}}</v-icon> | ||
28 | </v-list-item-avatar> | 26 | </v-list-item-avatar> |
29 | 27 | ||
30 | <v-list-item-content> | 28 | <v-list-item-content> |
31 | - <v-list-item-title v-text="item.title"></v-list-item-title> | 29 | + <v-list-item-title v-text="item"></v-list-item-title> |
32 | - <v-list-item-subtitle v-text="item.subtitle"></v-list-item-subtitle> | ||
33 | </v-list-item-content> | 30 | </v-list-item-content> |
34 | 31 | ||
35 | <v-list-item-action> | 32 | <v-list-item-action> |
... | @@ -49,12 +46,11 @@ | ... | @@ -49,12 +46,11 @@ |
49 | @click="" | 46 | @click="" |
50 | > | 47 | > |
51 | <v-list-item-avatar> | 48 | <v-list-item-avatar> |
52 | - <v-icon> {{item.iconClass}}</v-icon> | 49 | + <v-icon> mdi-file</v-icon> |
53 | </v-list-item-avatar> | 50 | </v-list-item-avatar> |
54 | 51 | ||
55 | <v-list-item-content> | 52 | <v-list-item-content> |
56 | - <v-list-item-title v-text="item.title"></v-list-item-title> | 53 | + <v-list-item-title v-text="item"></v-list-item-title> |
57 | - <v-list-item-subtitle v-text="item.subtitle"></v-list-item-subtitle> | ||
58 | </v-list-item-content> | 54 | </v-list-item-content> |
59 | 55 | ||
60 | <v-list-item-action> | 56 | <v-list-item-action> |
... | @@ -98,17 +94,40 @@ | ... | @@ -98,17 +94,40 @@ |
98 | </template> | 94 | </template> |
99 | 95 | ||
100 | <script> | 96 | <script> |
97 | +import { dropbox } from '../api/index'; | ||
101 | export default { | 98 | export default { |
102 | - data: () => ({ | 99 | + data() { |
103 | - items: [ | 100 | + return { |
104 | - { icon: 'folder', iconClass: 'mdi-folder', title: 'Photos', subtitle: 'Jan 9, 2014' }, | 101 | + folders: [], |
105 | - { icon: 'folder', iconClass: 'mdi-folder', title: 'Recipes', subtitle: 'Jan 17, 2014' }, | 102 | + files: [], |
106 | - { icon: 'folder', iconClass: 'mdi-folder', title: 'Work', subtitle: 'Jan 28, 2014' }, | 103 | + search:'', |
107 | - ], | 104 | + } |
108 | - items2: [ | 105 | + }, |
109 | - { icon: 'assignment', iconClass: 'mdi-file', title: 'Vacation itinerary', subtitle: 'Jan 20, 2014' }, | 106 | + async created(){ |
110 | - { icon: 'call_to_action', iconClass: 'mdi-PdfBox', title: 'Kitchen remodel', subtitle: 'Jan 10, 2014' }, | 107 | + try { |
111 | - ], | 108 | + const userData = { |
112 | - }), | 109 | + user_id: this.$store.getters.userId, |
110 | + cur: '/', | ||
111 | + }; | ||
112 | + const { data } = await dropbox(userData); | ||
113 | + console.log(data); | ||
114 | + this.$store.commit('setFolder', data.folders); | ||
115 | + this.$store.commit('setFile', data.files); | ||
116 | + } catch (error) { | ||
117 | + console.log("에러"); | ||
118 | + console.log(error.response.data); | ||
119 | + } | ||
120 | + } | ||
121 | + // data: () => ({ | ||
122 | + // items: [ | ||
123 | + // { icon: 'folder', iconClass: 'mdi-folder', title: 'Photos', subtitle: 'Jan 9, 2014' }, | ||
124 | + // { icon: 'folder', iconClass: 'mdi-folder', title: 'Recipes', subtitle: 'Jan 17, 2014' }, | ||
125 | + // { icon: 'folder', iconClass: 'mdi-folder', title: 'Work', subtitle: 'Jan 28, 2014' }, | ||
126 | + // ], | ||
127 | + // items2: [ | ||
128 | + // { icon: 'assignment', iconClass: 'mdi-file', title: 'Vacation itinerary', subtitle: 'Jan 20, 2014' }, | ||
129 | + // { icon: 'call_to_action', iconClass: 'mdi-PdfBox', title: 'Kitchen remodel', subtitle: 'Jan 10, 2014' }, | ||
130 | + // ], | ||
131 | + // }), | ||
113 | } | 132 | } |
114 | </script> | 133 | </script> | ... | ... |
front-end/src/components/FolderList.vue
0 → 100644
1 | +<template> | ||
2 | + <div> | ||
3 | + <v-list> | ||
4 | + <v-icon>mdi-folder</v-icon> | ||
5 | + <v-header>Folders</v-header> | ||
6 | + <v-list-item | ||
7 | + v-for="item in items" | ||
8 | + :key="item.files"> | ||
9 | + | ||
10 | + </v-list-item> | ||
11 | + </v-list> | ||
12 | + </div> | ||
13 | +</template> | ||
14 | + | ||
15 | +<script> | ||
16 | +export default { | ||
17 | + props:{ | ||
18 | + | ||
19 | + } | ||
20 | +} | ||
21 | +</script> | ||
22 | + | ||
23 | +<style> | ||
24 | + | ||
25 | +</style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
... | @@ -66,6 +66,11 @@ export default new VueRouter ({ | ... | @@ -66,6 +66,11 @@ export default new VueRouter ({ |
66 | path:'/feedback', | 66 | path:'/feedback', |
67 | name:'Feedback', | 67 | name:'Feedback', |
68 | component: () => import('../views/Feedback.vue') | 68 | component: () => import('../views/Feedback.vue') |
69 | + }, | ||
70 | + { | ||
71 | + path: '/folder', | ||
72 | + name: 'Folder', | ||
73 | + component: () => import('../views/FolderPage.vue') | ||
69 | } | 74 | } |
70 | 75 | ||
71 | ] | 76 | ] | ... | ... |
... | @@ -6,6 +6,8 @@ Vue.use(Vuex) | ... | @@ -6,6 +6,8 @@ Vue.use(Vuex) |
6 | export default new Vuex.Store({ | 6 | export default new Vuex.Store({ |
7 | state: { | 7 | state: { |
8 | id: '', | 8 | id: '', |
9 | + folders: [], | ||
10 | + files: [], | ||
9 | }, | 11 | }, |
10 | mutations: { | 12 | mutations: { |
11 | setId(state, userid){ | 13 | setId(state, userid){ |
... | @@ -13,11 +15,26 @@ export default new Vuex.Store({ | ... | @@ -13,11 +15,26 @@ export default new Vuex.Store({ |
13 | }, | 15 | }, |
14 | clearid(state){ | 16 | clearid(state){ |
15 | state.id= ''; | 17 | state.id= ''; |
18 | + }, | ||
19 | + setFolder(state, folderlist){ | ||
20 | + state.folders = folderlist; | ||
21 | + }, | ||
22 | + setFile(state, filelist){ | ||
23 | + state.files = fileList; | ||
16 | } | 24 | } |
17 | }, | 25 | }, |
18 | getters: { | 26 | getters: { |
19 | isLogin(state){ | 27 | isLogin(state){ |
20 | return state.id !== ''; | 28 | return state.id !== ''; |
29 | + }, | ||
30 | + userID(state){ | ||
31 | + return state.id; | ||
32 | + }, | ||
33 | + folderL(state){ | ||
34 | + return state.folders; | ||
35 | + }, | ||
36 | + fileL(state){ | ||
37 | + return state.files; | ||
21 | } | 38 | } |
22 | } | 39 | } |
23 | }) | 40 | }) | ... | ... |
front-end/src/views/FolderPage.vue
0 → 100644
1 | +<template> | ||
2 | + <div> | ||
3 | + <FolderList></FolderList> | ||
4 | + </div> | ||
5 | +</template> | ||
6 | + | ||
7 | +<script> | ||
8 | +import FolderList from '../components/FolderList' | ||
9 | + | ||
10 | +export default { | ||
11 | + components: { | ||
12 | + FolderList, | ||
13 | + } | ||
14 | +} | ||
15 | +</script> | ||
16 | + | ||
17 | +<style> | ||
18 | + | ||
19 | +</style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
-
Please register or login to post a comment