From aeb52fa2f4e64bbd45ee4858298dae3329847c99 Mon Sep 17 00:00:00 2001 From: kms Date: Thu, 1 Dec 2022 01:08:05 +0900 Subject: [PATCH] fix : refactoring code, disunite API service and async function add. TODO watch Token statue because async state not recommend. --- src/vite-frontend/src/api/index.ts | 45 +++++++++++++ src/vite-frontend/src/store/index.ts | 19 ++++-- .../src/views/TheArticleDetail.vue | 4 +- src/vite-frontend/src/views/TheLogin.vue | 38 +++++------ src/vite-frontend/src/views/TheRegister.vue | 44 ++++++------- src/vite-frontend/src/views/TheSetting.vue | 65 +++++++++---------- src/vite-frontend/vite.config.ts | 8 --- 7 files changed, 124 insertions(+), 99 deletions(-) create mode 100644 src/vite-frontend/src/api/index.ts diff --git a/src/vite-frontend/src/api/index.ts b/src/vite-frontend/src/api/index.ts new file mode 100644 index 0000000..355b356 --- /dev/null +++ b/src/vite-frontend/src/api/index.ts @@ -0,0 +1,45 @@ +import axios, {AxiosResponse} from "axios"; +import { useStore } from "vuex"; + +//TODO +//임시방편 watch로 바라보는게 더 좋다고함. watch로 감시하자. Token +const getToken = () => { + let test = useStore().getters.getToken; + console.log(test) + return test; +} + +const axiosService = axios.create({ + baseURL: import.meta.env.VITE_BASE_URL, +}) + +const signUp = async (user: object): Promise => { + return axiosService.post('/api/users',{user}); +} + +const signIn = async (user: object): Promise => { + return axiosService.post('/api/users/login',{user}) +} + +const getCurrentUser = async (): Promise => { + let currentToken = localStorage.getItem("token"); + return axiosService.get('/api/user', { + headers: { + Authorization: "TOKEN " + currentToken + } + }) +} + +const updateUser = async (user: object): Promise => { + let currentToken = localStorage.getItem("token"); + console.log(user); + console.log(currentToken); + return axiosService.put('/api/user', {user}, { + headers: { + Authorization: "TOKEN " + currentToken, + "Content-Type": `application/json`, + } + }) +} + +export { signUp, signIn, getCurrentUser, updateUser } \ No newline at end of file diff --git a/src/vite-frontend/src/store/index.ts b/src/vite-frontend/src/store/index.ts index e5d1b46..bfa69d4 100644 --- a/src/vite-frontend/src/store/index.ts +++ b/src/vite-frontend/src/store/index.ts @@ -1,4 +1,3 @@ -import axios from "axios"; import { createStore } from 'vuex'; export default createStore({ @@ -12,7 +11,13 @@ export default createStore({ }, setToken(state, token){ state.token = token; - }, + } + }, + getters: { + getToken(state){ + console.log(state.token); + return state.token; + } }, actions: { LOGIN({commit}, user){ @@ -22,11 +27,11 @@ export default createStore({ localStorage.setItem("token", user.token); }, LOGOUT({commit}){ - commit("setUsername",""); - commit("setToken",""); - localStorage.removeItem("username"); - localStorage.removeItem("token"); - }, + commit("setUsername",""); + commit("setToken",""); + localStorage.removeItem("username"); + localStorage.removeItem("token"); + }, }, } ) diff --git a/src/vite-frontend/src/views/TheArticleDetail.vue b/src/vite-frontend/src/views/TheArticleDetail.vue index 4a375c2..7bb3f42 100644 --- a/src/vite-frontend/src/views/TheArticleDetail.vue +++ b/src/vite-frontend/src/views/TheArticleDetail.vue @@ -225,6 +225,7 @@ export default defineComponent({ } }).then(response => { comment.body=""; + getCommentList.comment.push(response.data.comment); }) } @@ -233,13 +234,12 @@ export default defineComponent({ axios.get(url + "/api/articles/" + props.slug,) .then(response => { articleDetail.article = response.data.article; + console.log(articleDetail.article); }) axios.get(url + "/api/articles/" + props.slug + "/comments") .then(response => { getCommentList.comment = response.data.comments; - console.log(getCommentList.comment); - console.log(response); }) }) diff --git a/src/vite-frontend/src/views/TheLogin.vue b/src/vite-frontend/src/views/TheLogin.vue index d6b367c..2225051 100644 --- a/src/vite-frontend/src/views/TheLogin.vue +++ b/src/vite-frontend/src/views/TheLogin.vue @@ -21,7 +21,7 @@
- @@ -33,8 +33,8 @@ diff --git a/src/vite-frontend/vite.config.ts b/src/vite-frontend/vite.config.ts index 23129eb..395e396 100644 --- a/src/vite-frontend/vite.config.ts +++ b/src/vite-frontend/vite.config.ts @@ -16,14 +16,6 @@ export default defineConfig({ server: { https: true, port: 4000, - proxy:{ - '/': { - target : "http://3.35.44.58:8080", - rewrite: (path) => path.replace(/^\//,''), - changeOrigin: true, - secure: false - } - } }, plugins: [vue(),basicSsl()]