From 6852678cffa6efafdde077a50121d1ad2b4ff3e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=9D=E5=85=88=E7=91=9E?= <1490493387@qq.com> Date: Thu, 11 May 2023 07:48:39 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20:recycle:=20=E6=B3=A8=E9=94=80?= =?UTF-8?q?=E6=B8=85=E7=A9=BA=E8=B7=AF=E7=94=B1=E4=BD=8D=E7=BD=AE=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Former-commit-id: e06d8f6551f15bf8bb7794501069844c7e769a3c --- src/router/index.ts | 1 - src/store/modules/user.ts | 47 ++++++++++++++++++++------------------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/router/index.ts b/src/router/index.ts index 55e86fa7..c8801941 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -114,7 +114,6 @@ const router = createRouter({ */ export function resetRouter() { router.replace({ path: "/login" }); - location.reload(); } export default router; diff --git a/src/store/modules/user.ts b/src/store/modules/user.ts index 9e39254a..72d806d5 100644 --- a/src/store/modules/user.ts +++ b/src/store/modules/user.ts @@ -1,20 +1,20 @@ -import { defineStore } from 'pinia'; +import { defineStore } from "pinia"; -import { loginApi, logoutApi } from '@/api/auth'; -import { getUserInfo } from '@/api/user'; -import { resetRouter } from '@/router'; -import { store } from '@/store'; +import { loginApi, logoutApi } from "@/api/auth"; +import { getUserInfo } from "@/api/user"; +import { resetRouter } from "@/router"; +import { store } from "@/store"; -import { LoginData } from '@/api/auth/types'; -import { UserInfo } from '@/api/user/types'; +import { LoginData } from "@/api/auth/types"; +import { UserInfo } from "@/api/user/types"; -import { useStorage } from '@vueuse/core'; +import { useStorage } from "@vueuse/core"; -export const useUserStore = defineStore('user', () => { +export const useUserStore = defineStore("user", () => { // state - const token = useStorage('accessToken', ''); - const nickname = ref(''); - const avatar = ref(''); + const token = useStorage("accessToken", ""); + const nickname = ref(""); + const avatar = ref(""); const roles = ref>([]); // 用户角色编码集合 → 判断路由权限 const perms = ref>([]); // 用户权限编码集合 → 判断按钮权限 @@ -27,12 +27,12 @@ export const useUserStore = defineStore('user', () => { function login(loginData: LoginData) { return new Promise((resolve, reject) => { loginApi(loginData) - .then(response => { + .then((response) => { const { tokenType, accessToken } = response.data; - token.value = tokenType + ' ' + accessToken; // Bearer eyJhbGciOiJIUzI1NiJ9.xxx.xxx + token.value = tokenType + " " + accessToken; // Bearer eyJhbGciOiJIUzI1NiJ9.xxx.xxx resolve(); }) - .catch(error => { + .catch((error) => { reject(error); }); }); @@ -44,10 +44,10 @@ export const useUserStore = defineStore('user', () => { getUserInfo() .then(({ data }) => { if (!data) { - return reject('Verification failed, please Login again.'); + return reject("Verification failed, please Login again."); } if (!data.roles || data.roles.length <= 0) { - reject('getUserInfo: roles must be a non-null array!'); + reject("getUserInfo: roles must be a non-null array!"); } nickname.value = data.nickname; avatar.value = data.avatar; @@ -55,7 +55,7 @@ export const useUserStore = defineStore('user', () => { perms.value = data.perms; resolve(data); }) - .catch(error => { + .catch((error) => { reject(error); }); }); @@ -68,9 +68,10 @@ export const useUserStore = defineStore('user', () => { .then(() => { resetRouter(); resetToken(); + location.reload(); // 清空路由 resolve(); }) - .catch(error => { + .catch((error) => { reject(error); }); }); @@ -78,9 +79,9 @@ export const useUserStore = defineStore('user', () => { // 重置 function resetToken() { - token.value = ''; - nickname.value = ''; - avatar.value = ''; + token.value = ""; + nickname.value = ""; + avatar.value = ""; roles.value = []; perms.value = []; } @@ -93,7 +94,7 @@ export const useUserStore = defineStore('user', () => { login, getInfo, logout, - resetToken + resetToken, }; });