From a12a2375e7c10a2f2b2c8089d08f39adb8d5a909 Mon Sep 17 00:00:00 2001 From: may_zhouwei <7443633+may_zhouwei@user.noreply.gitee.com> Date: Wed, 9 Sep 2020 13:44:00 +0800 Subject: [PATCH] =?UTF-8?q?1=20=EF=BC=8C=E5=AE=89=E5=85=A8=EF=BC=9A?= =?UTF-8?q?=E8=B7=AF=E7=94=B1=E6=B1=A1=E6=9F=93=E6=BC=8F=E6=B4=9E=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=202=EF=BC=8C=E9=80=BB=E8=BE=91=20=E6=9C=AA=E5=BC=80?= =?UTF-8?q?=E5=90=AF=E7=99=BB=E5=BD=95=E6=8B=A6=E6=88=AA=E4=B8=94=E6=9C=AA?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E6=97=B6=E5=A4=84=E7=90=86=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/store/modules/routes.js | 6 ++++-- src/utils/request.js | 6 +++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/store/modules/routes.js b/src/store/modules/routes.js index c16acf6..67775d0 100644 --- a/src/store/modules/routes.js +++ b/src/store/modules/routes.js @@ -24,11 +24,13 @@ const mutations = { }; const actions = { async setRoutes({ commit }, permissions) { + //防止污染路由 + const baseRoutes = [...asyncRoutes]; let accessedRoutes = []; if (permissions.includes("admin")) { - accessedRoutes = asyncRoutes; + accessedRoutes = baseRoutes; } else { - accessedRoutes = await filterAsyncRoutes(asyncRoutes, permissions); + accessedRoutes = await filterAsyncRoutes(baseRoutes, permissions); } commit("setRoutes", accessedRoutes); return accessedRoutes; diff --git a/src/utils/request.js b/src/utils/request.js index a897ced..afaedda 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -9,6 +9,7 @@ import { requestTimeout, successCode, tokenName, + loginInterception, } from "@/config/settings"; import store from "@/store"; import qs from "qs"; @@ -44,7 +45,10 @@ const handleCode = (code, msg) => { case invalidCode: Vue.prototype.$baseMessage(msg || `后端接口${code}异常`, "error"); store.dispatch("user/resetAccessToken").catch(() => {}); - location.reload(); + //开启登录拦截才需要刷新,不然死循环 + if (loginInterception) { + location.reload(); + } break; case noPermissionCode: router.push({ path: "/401" }).catch(() => {});