Skip to content

Commit e35b290

Browse files
committed
2024年3月30日06:19:51
1 parent 0d71dc2 commit e35b290

File tree

12 files changed

+172
-188
lines changed

12 files changed

+172
-188
lines changed

package-lock.json

Lines changed: 8 additions & 25 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@
2626
"eslint-plugin-vue": "^9.17.0",
2727
"unplugin-auto-import": "^0.17.3",
2828
"unplugin-vue-components": "^0.26.0",
29-
"vite": "^5.0.10"
29+
"vite": "^5.1.2"
3030
}
3131
}

src/components/HeaderView.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ const url = ref("https://pic.imgdb.cn/item/65a271fe871b83018a8f9a8f.gif");
108108
:inactive-action-icon="Sunny"
109109
style="
110110
--el-switch-on-color: rgba(19, 206, 102, 0.7);
111-
--el-switch-off-color: rgba(141, 141, 141, 0.79);
111+
--el-switch-off-color: rgb(74,163,252);
112112
"
113113
/>
114114
</el-menu-item>

src/main.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@ import router from '@/router'
66
import ElementPlus from "element-plus";
77
import 'element-plus/dist/index.css'
88
import 'element-plus/theme-chalk/dark/css-vars.css'
9-
import {createPersistedState} from "pinia-persistedstate-plugin";
10-
119
import '@/css/main.css';
12-
import {createPinia} from "pinia";
1310

11+
import {createPinia} from "pinia";
12+
import {createPersistedState} from "pinia-persistedstate-plugin";
1413

1514

1615
// 导入element-plus中文语言
1716
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
17+
1818
const app = createApp(App)
1919

2020
// 使用pinia和persist保存状态并持久化

src/methods/logout.js

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,5 @@
11
import request from "@/util/request.js";
2-
3-
import {useTokenStore} from "@/stores/token";
4-
import {useReaderStore} from "@/stores/reader";
5-
import {useAdminStore} from "@/stores/admin";
6-
import {ElMessage} from "element-plus";
7-
8-
const adminStore = useAdminStore();
9-
const tokenStore = useTokenStore();
10-
const readerStore = useReaderStore();
11-
12-
// 用户退出
2+
// 用户退出登录
133
const logoutService = function () {
144
// 调用后端接口清除redis中的令牌
155
return request.delete('/logout');

src/stores/reader.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import {defineStore} from "pinia";
22
import {ref} from 'vue';
33

4-
54
/**
65
* 保存登录时用户的信息
76
*/
@@ -29,7 +28,7 @@ export const useReaderStore = defineStore('reader', () => {
2928
reader.value.token = '';
3029
}
3130
return {
32-
reader, setReader,clearReader
31+
reader, setReader, clearReader
3332
}
3433
},
3534
{

src/stores/token.js

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,23 @@
1-
import { defineStore } from "pinia";
1+
import {defineStore} from "pinia";
22
import {ref} from 'vue';
3-
export const useTokenStore = defineStore('token',()=>{
3+
4+
export const useTokenStore = defineStore('token', () => {
45
//1.定义描述token
56
const token = ref('')
67
//2.定义修改token的方法
7-
const setToken = (newToken)=>{
8+
const setToken = (newToken) => {
89
token.value = newToken
910
}
1011
//3.定义移除token的方法
11-
const removeToken = ()=>{
12-
token.value=''
12+
const removeToken = () => {
13+
token.value = ''
1314
}
1415
return {
15-
token,setToken,removeToken
16+
token, setToken, removeToken
1617
}
1718
},
1819
{
1920
//使用persis插件持久化
2021
persis: true
2122
}
22-
)
23+
)

src/util/request.js

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import {useTokenStore} from "@/stores/token.js";
55

66
const baseURL = "/api";
77
const instance = axios.create({baseURL});
8-
98
const tokenStore = useTokenStore();
109

1110

@@ -22,19 +21,22 @@ instance.interceptors.response.use(
2221
},
2322
//失败回调
2423
(error) => {
25-
// 状态码为401,419都跳转到登录界面
26-
if (error.response) {
27-
const code = error.response.status;
28-
if (code === 401) {
24+
const code = error.response.status;
25+
switch (code) {
26+
case 401:
2927
ElMessage({message: '请先登录!', type: "error",});
30-
router.push('/login');
31-
} else if (code === 419) {
28+
break;
29+
case 419:
3230
ElMessage.error("身份已过期,请重新登录!");
33-
router.push('/login');
34-
} else {
31+
break;
32+
default:
3533
ElMessage.error("服务器异常!" + code);
36-
}
34+
break;
3735
}
36+
router.push('/login');
37+
window.local.reload();
38+
39+
3840
// 将异步的状态设置为失败状态
3941
return Promise.reject(error);
4042
}

0 commit comments

Comments
 (0)