feat: returnUrl跳转

environments/test/deployments/1
saatana 2 years ago
parent d89c18590c
commit d881723ed5

@ -113,7 +113,8 @@ router.beforeEach(async (to, from, next) => {
} else if (to.meta.global) {
next();
} else {
next({ name: 'Login' });
next(false);
store.dispatch('auth/logout', to.fullPath);
}
});

@ -72,20 +72,22 @@ const actions = {
}
return res;
},
login: async ({ commit }, data) => {
login: async ({ commit, rootGetters }, data) => {
let res = await login(data);
if (res) {
ElMessage.success('登陆成功');
commit('local/setToken', res.token, { root: true });
router.push('/');
router.push(rootGetters['layout/returnUrl']);
} else {
ElMessage.error('登陆失败');
}
return res;
},
logout: ({ commit }) => {
logout: ({ commit }, returnUrl) => {
returnUrl = returnUrl || router.currentRoute.value.fullPath;
commit('local/setToken', null, { root: true });
router.push({ name: 'Login' });
commit('layout/setReturnUrl', returnUrl, { root: true });
router.push({ name: 'Login', query: { returnUrl } });
},
getPermission: async ({ commit }) => {
let res = await getPermission({ systemCode: 'msb_shop_admin' });

@ -9,6 +9,7 @@ const state = () => ({
breakcrumbList: [],
autoRouter: false,
notKeepAliveList: [],
returnUrl: null,
});
const getters = {
asideList: (state, getters, rootState) => {
@ -19,6 +20,13 @@ const getters = {
},
collapseMenu: (state, getters) => state.collapseMenu || getters.menuList.length < 2,
activeAsideName: (state, getters) => getters.asideList.find((item) => item.name === state.activeAside)?.meta.title,
returnUrl: (state) => {
let res = state.returnUrl || '/';
if (res === '/login') {
res = '/';
}
return res;
},
};
const mutations = {
setCollapseMenu: (state, data) => (state.collapseMenu = data),
@ -54,6 +62,7 @@ const mutations = {
setBreakcrumbList: (state, data) => (state.breakcrumbList = data),
setAutoRouter: (state, data) => (state.autoRouter = data),
setNotKeepAliveList: (state, data) => (state.notKeepAliveList = data),
setReturnUrl: (state, data) => (state.returnUrl = data),
};
const actions = {};
export default {

Loading…
Cancel
Save