Abp Vnext3 vue-admin-template(二用户退出)
Posted liessay
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Abp Vnext3 vue-admin-template(二用户退出)相关的知识,希望对你有一定的参考价值。
先修改用户退出,中午有点困先改简单的
退出代码在srclayoutcomponentsNavbar.vue代码如下,讲流程这里不需要修改
methods: { toggleSideBar() { this.$store.dispatch(‘app/toggleSideBar‘) }, async logout() { await this.$store.dispatch(‘user/logout‘) this.$router.push(`/login?redirect=${this.$route.fullPath}`) } }
退出方法调用storeuser.js的logout及resetToken,官方提供示例是post方式,abp退出是get方式请求
logout({ commit, state, dispatch }) { return new Promise((resolve, reject) => { logout(state.token).then(() => { commit(‘SET_TOKEN‘, ‘‘) commit(‘SET_ROLES‘, []) removeToken() resetRouter() // reset visited views and cached views // to fixed https://github.com/PanJiaChen/vue-element-admin/issues/2485 dispatch(‘tagsView/delAllViews‘, null, { root: true }) resolve() }).catch(error => { reject(error) }) }) },
直接修改为
logout({ commit, state }) { return new Promise((resolve, reject) => { removeToken() resetRouter() commit(‘RESET_STATE‘) resolve() }) },
把srcapiuser.js中的logout方法访问url修改为以下代码
export function logout() { return request({ url: ‘/api/account/logout‘, method: ‘get‘ }) }
最后一步清除Token
resetToken({ commit }) { return new Promise(resolve => { removeToken() // must remove token first commit(‘RESET_STATE‘) resolve() }) }
测试点退出,返回登录页,并将cookie中的token清除成功
以上是关于Abp Vnext3 vue-admin-template(二用户退出)的主要内容,如果未能解决你的问题,请参考以下文章