fix: logout reset state

This commit is contained in:
花裤衩 2019-12-29 14:24:11 +08:00
parent dc5aa51577
commit 6169577990
1 changed files with 12 additions and 5 deletions

View File

@ -2,13 +2,20 @@ import { login, logout, getInfo } from '@/api/user'
import { getToken, setToken, removeToken } from '@/utils/auth' import { getToken, setToken, removeToken } from '@/utils/auth'
import { resetRouter } from '@/router' import { resetRouter } from '@/router'
const state = { const getDefaultState = () => {
token: getToken(), return {
name: '', token: getToken(),
avatar: '' name: '',
avatar: ''
}
} }
const state = getDefaultState()
const mutations = { const mutations = {
RESET_STATE: (state) => {
Object.assign(state, getDefaultState())
},
SET_TOKEN: (state, token) => { SET_TOKEN: (state, token) => {
state.token = token state.token = token
}, },
@ -61,7 +68,7 @@ const actions = {
logout({ commit, state }) { logout({ commit, state }) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
logout(state.token).then(() => { logout(state.token).then(() => {
commit('SET_TOKEN', '') commit('RESET_STATE', '')
removeToken() removeToken()
resetRouter() resetRouter()
resolve() resolve()