loginOut() {
loginOut(undefined, this.$route.path);
},
export function loginOut(msg,redirect) {
Alert(msg ? msg : '退出中...')
ssoLogout().then(result => {
if (!redirectToLogin(redirect)) {
router.push({path: '/login?redirect=' + encodeURIComponent(redirect)})
}
})
}
export const ssoLogout = function () {
return new Promise((resolve, reject) => {
loginHttp.logout().then(() => {
clearLoginInfo()
resolve()
}).catch(() => {
clearLoginInfo()
resolve()
})
})
}
export function clearLoginInfo() {
store.commit('user/updateToken', '')
store.commit('user/updateName', '')
store.commit('user/updateUsername', '')
store.commit('user/updateMobilePhone', '')
store.commit('user/updateInfo', {})
store.commit('common/updateInitAuthority', false)
localStorage.removeItem('hb_token')
localStorage.removeItem('hb_username')
localStorage.removeItem('hb_name')
localStorage.removeItem('hb_userId')
localStorage.removeItem('hb_isCountyRule')
}
export function redirectToLogin(redirect) {
let href = window.location.href
let index = href.indexOf('?token')
if (index < 0) {
index = href.indexOf('&token')
}
if (index >= 0) {
let hostIndex = href.indexOf('/#/')
href = href.substring(0,hostIndex)
if (href.charAt(href.length - 1) === '/') {
href += '#/login'
href = '#/login?redirect=' + encodeURIComponent(redirect)
} else {
href += '/#/login'
href = '/#/login?redirect=' + encodeURIComponent(redirect)
}
window.setTimeout(() => {
window.location.href = href
}, 1500)
return true
} else {
return false
}
}