
--- client/views/layout/Header.vue
+++ client/views/layout/Header.vue
... | ... | @@ -128,14 +128,12 @@ |
128 | 128 |
logout() { |
129 | 129 |
const result = confirm('로그아웃 하시겠습니까?') |
130 | 130 |
if (result) { |
131 |
- |
|
131 |
+ this.$store.dispatch('logout'); |
|
132 |
+ this.goToPage('login'); |
|
132 | 133 |
} else { |
133 | 134 |
return; |
134 | 135 |
} |
135 |
- localStorage.removeItem('token'); |
|
136 |
- localStorage.removeItem("vuexState"); |
|
137 | 136 |
|
138 |
- this.goToPage('login'); |
|
139 | 137 |
}, |
140 | 138 |
goToPage(page) { |
141 | 139 |
this.$router.push({ name: page }); |
--- client/views/pages/AppStore.js
+++ client/views/pages/AppStore.js
... | ... | @@ -84,6 +84,7 @@ |
84 | 84 |
getCurrentWdBkIndex: (state) => state.currentWdBkIndex, |
85 | 85 |
}, |
86 | 86 |
mutations: { |
87 |
+ |
|
87 | 88 |
setToken(state, token) { |
88 | 89 |
state.token = token; |
89 | 90 |
}, |
... | ... | @@ -99,6 +100,15 @@ |
99 | 100 |
state.learningId = null; |
100 | 101 |
saveStateToLocalStorage(state); |
101 | 102 |
}, |
103 |
+ |
|
104 |
+ clearState(state) { |
|
105 |
+ const initialState = loadStateFromLocalStorage(); // 초기 상태 로드 |
|
106 |
+ Object.keys(initialState).forEach(key => { |
|
107 |
+ state[key] = initialState[key]; |
|
108 |
+ }); |
|
109 |
+ saveStateToLocalStorage(state); // 초기화된 상태 저장 |
|
110 |
+ }, |
|
111 |
+ |
|
102 | 112 |
setUser(state, userId) { |
103 | 113 |
state.userId = userId; |
104 | 114 |
saveStateToLocalStorage(state); |
... | ... | @@ -186,8 +196,9 @@ |
186 | 196 |
localStorage.setItem("token", token); |
187 | 197 |
}, |
188 | 198 |
logout({ commit }) { |
189 |
- commit("clearToken"); |
|
199 |
+ commit("clearState"); |
|
190 | 200 |
localStorage.removeItem("token"); |
201 |
+ localStorage.removeItem("vuexState"); |
|
191 | 202 |
}, |
192 | 203 |
updateStdId({ commit }, payload) { |
193 | 204 |
return new Promise((resolve) => { |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?