@ -16,10 +16,10 @@ router.beforeEach((to, from, next) => {
if (store.getters.roles.length === 0) {
store.dispatch('GetInfo').then(res => { // 拉取用户信息
next()
}).catch(() => {
}).catch((err) => {
store.dispatch('FedLogOut').then(() => {
Message.error('验证失败,请重新登录')
next({ path: '/login' })
Message.error(err || 'Verification failed, please login again')
next({ path: '/' })
})
} else {
@ -44,8 +44,12 @@ const user = {
GetInfo({ commit, state }) {
return new Promise((resolve, reject) => {
getInfo(state.token).then(response => {
const data = response.data
commit('SET_ROLES', data.roles)
const data = response
if (data.roles && data.roles.length > 0) { // 验证返回的roles是否是一个非空数组
reject('getInfo: roles must be a non-null array !')
}
commit('SET_NAME', data.name)
commit('SET_AVATAR', data.avatar)
resolve(response)