diff --git a/jsconfig.json b/jsconfig.json index 86b1741..c28b769 100644 --- a/jsconfig.json +++ b/jsconfig.json @@ -7,5 +7,5 @@ "@/*": ["src/*"] } }, - "exclude": ["node_modules", "dist", ".vscode"] -} \ No newline at end of file + "exclude": ["node_modules", "dist", ".vscode", ".idea"] +} diff --git a/src/signalr/analysis.js b/src/signalr/analysis.js index b4abeed..63b8b44 100644 --- a/src/signalr/analysis.js +++ b/src/signalr/analysis.js @@ -2,7 +2,7 @@ import { ElNotification, ElMessageBox } from 'element-plus' import useSocketStore from '@/store/modules/socket' import useUserStore from '@/store/modules/user' import { webNotify } from '@/utils/index' - +import notificationBellIcon from '@/components/Notice/bellIcon/index.vue' export default { onMessage(connection) { connection.on(MsgType.M001, (data) => { @@ -30,7 +30,7 @@ export default { ElNotification({ title: import.meta.env.VITE_APP_TITLE, message: `你有${data.data.unReadNotifications.length}条通知公告待查看`, - type: 'success', + icon: notificationBellIcon, duration: 0 }) } diff --git a/src/store/modules/user.js b/src/store/modules/user.js index ddc76ef..fd70184 100644 --- a/src/store/modules/user.js +++ b/src/store/modules/user.js @@ -124,6 +124,10 @@ const useUserStore = defineStore('user', { removeToken() resolve() }) + }, + refreshToken(token) { + setToken(token) + this.token = token } } }) diff --git a/src/utils/request.js b/src/utils/request.js index 64fb72c..174cd4f 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -49,6 +49,10 @@ service.interceptors.response.use( if (res.request.responseType === 'blob' || res.request.responseType === 'arraybuffer') { return res } + const token = res.headers['x-refresh-token'] + if (token) { + useUserStore().refreshToken(token) + } if (code === 401) { if (useUserStore().lateFlag === 0) { useUserStore().lateFlag++