From 28321962f5fcc0a37cdaf477c69558a8a31a0b55 Mon Sep 17 00:00:00 2001 From: "xh.xin" Date: Sun, 4 May 2025 13:46:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E7=99=BB=E5=BD=95=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E7=AE=A1=E7=90=86:=201.=20=E6=B7=BB=E5=8A=A0getUserIn?= =?UTF-8?q?fo=E6=96=B9=E6=B3=95=202.=20=E5=AE=9E=E7=8E=B0token=E6=9C=AC?= =?UTF-8?q?=E5=9C=B0=E5=AD=98=E5=82=A8=203.=20=E6=B7=BB=E5=8A=A0=E9=80=80?= =?UTF-8?q?=E5=87=BA=E7=99=BB=E5=BD=95=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/main.ts | 10 +++++++++- web/src/store/modules/user.ts | 9 ++++++++- web/src/views/Layout/index.vue | 16 ++++++++++++++-- 3 files changed, 31 insertions(+), 4 deletions(-) diff --git a/web/src/main.ts b/web/src/main.ts index 700cbff..6c16b65 100644 --- a/web/src/main.ts +++ b/web/src/main.ts @@ -1,9 +1,10 @@ import { createApp } from 'vue' import App from './App.vue' import router from './router' -import store from './store' +import store, { useUserStore } from './store' import ElementPlus from 'element-plus' import 'element-plus/dist/index.css' +import { getToken } from './utils/storage' const app = createApp(App) @@ -11,4 +12,11 @@ app.use(router) app.use(store) app.use(ElementPlus) +// 初始化store中的token +const token = getToken() +if (token) { + const userStore = useUserStore() + userStore.setToken(token) +} + app.mount('#app') diff --git a/web/src/store/modules/user.ts b/web/src/store/modules/user.ts index 9133f65..2d633f3 100644 --- a/web/src/store/modules/user.ts +++ b/web/src/store/modules/user.ts @@ -2,6 +2,7 @@ import { defineStore } from 'pinia' import { ref } from 'vue' import { loginApi } from '../../api/login' import type { LoginForm } from '../../api/login/types' +import { setToken as setStorageToken, removeToken } from '../../utils/storage' export const useUserStore = defineStore('user', () => { const token = ref('') @@ -9,6 +10,7 @@ export const useUserStore = defineStore('user', () => { const setToken = (newToken: string) => { token.value = newToken + setStorageToken(newToken) } const setUserInfo = (info: object) => { @@ -22,11 +24,16 @@ export const useUserStore = defineStore('user', () => { return res } + const getUserInfo = () => { + return userInfo.value + } + return { token, userInfo, setToken, setUserInfo, - login + login, + getUserInfo } }) diff --git a/web/src/views/Layout/index.vue b/web/src/views/Layout/index.vue index ddf22a2..f406ae5 100644 --- a/web/src/views/Layout/index.vue +++ b/web/src/views/Layout/index.vue @@ -48,7 +48,7 @@ @@ -65,7 +65,9 @@