Skip to content

Commit ba4568f

Browse files
committed
修改部分含有用户id的请求,pinia修复登出问题
1 parent d454f95 commit ba4568f

File tree

9 files changed

+37
-19
lines changed

9 files changed

+37
-19
lines changed

src/components/HeaderView.vue

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,11 @@ const isDark = useDark();
2727
// 头像下拉菜单命令
2828
const handleCommand = function (command) {
2929
if (command === "logout") {
30-
// 退出后清除token和reader信息
30+
// 退出后清除token和用户信息
3131
tokenStore.setToken(null);
32-
readerStore.setReader(null);
32+
readerStore.clearReader();
33+
adminStore.clearAdmin();
34+
3335
router.push("/login");
3436
} else if (command === "frontend") {
3537
window.open("https://github.com/TankingCao/vue3-vite");
@@ -86,7 +88,7 @@ const url = ref("https://pic.imgdb.cn/item/65a271fe871b83018a8f9a8f.gif");
8688
<el-tag v-if="isAdmin" type="warning" size="large" round>
8789
管理员
8890
</el-tag>
89-
<el-tag v-else type="primary" size="large" round> 读者 </el-tag>
91+
<el-tag v-else size="large" round> 读者 </el-tag>
9092
</el-menu-item>
9193

9294
<!--深浅色图标-->

src/components/SideView.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,8 @@ const router = useRouter();
6262
const logout = () => {
6363
// 退出后清除token、reader和admin信息
6464
tokenStore.setToken(null);
65-
readerStore.setReader(null);
66-
adminStore.setAdmin(null);
65+
readerStore.clearReader();
66+
6767
router.push("/login");
6868
};
6969

src/methods/borrow.js

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,15 @@
11
import request from "@/util/request";
22

33
// 查询个人的借书记录
4-
const getBorrowByReaderIdService = function (id) {
5-
return request.get('/borrow', {
6-
params: {readerId: id},
7-
});
4+
const getBorrowByReaderIdService = function () {
5+
return request.get('/borrow');
86
};
97

108
//借书
11-
const borrowService = function (isbn, readerId, dueDate) {
9+
const borrowService = function (isbn, dueDate) {
1210
return request.get('/borrow/borrowBook', {
1311
params: {
1412
isbn: isbn,
15-
readerId: readerId,
1613
dueDate: dueDate
1714
}
1815
});

src/stores/admin.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,16 @@ export const useAdminStore = defineStore('admin', () => {
1919
const setAdmin = (data) => {
2020
admin.value = data;
2121
}
22+
//清除信息
23+
const clearAdmin = ()=>{
24+
admin.value.id = '';
25+
admin.value.username = '';
26+
admin.value.nickname = '';
27+
admin.value.token = '';
28+
}
29+
2230
return {
23-
admin, setAdmin,isAdmin,setIsAdmin
31+
admin, setAdmin,isAdmin,setIsAdmin,clearAdmin
2432
}
2533
},
2634
// 持久化,pinia保存在内存中,刷新即丢失

src/stores/reader.js

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,18 @@ export const useReaderStore = defineStore('reader', () => {
1818
const setReader = (data) => {
1919
reader.value = data;
2020
}
21+
//清除信息
22+
const clearReader = () => {
23+
reader.value.id = '';
24+
reader.value.username = '';
25+
reader.value.nickname = '';
26+
reader.value.gender = '';
27+
reader.value.age = '';
28+
reader.value.tel = '';
29+
reader.value.token = '';
30+
}
2131
return {
22-
reader, setReader
32+
reader, setReader,clearReader
2333
}
2434
},
2535
{

src/views/BookView.vue

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ const tableData = ref([]);
1313
1414
// 页面加载时获取所有书籍
1515
onMounted(async () => {
16+
loading.value = true;
1617
await getAllBooks();
18+
loading.value = false;
1719
});
1820
1921
// 获取所有书籍
@@ -89,7 +91,7 @@ const showBorrow = (row) => {
8991
9092
//借阅
9193
const borrow = async () => {
92-
await borrowService(book.value.isbn, readerStore.reader.id, dueDate.value);
94+
await borrowService(book.value.isbn, dueDate.value);
9395
ElMessage.success("借阅成功");
9496
showDrawer.value = false;
9597
//刷新表格

src/views/BorrowView.vue

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
<script setup>
2-
import {useReaderStore} from "@/stores/reader.js";
32
import {
43
deleteBorrowBatchService,
54
deleteByIdService,
@@ -12,7 +11,7 @@ import SideView from "@/components/SideView.vue";
1211
import {ElMessage} from "element-plus";
1312
import {Delete} from "@element-plus/icons-vue";
1413
15-
const readerStore = useReaderStore();
14+
1615
const tableData = ref([]);
1716
1817
onMounted(() => {
@@ -36,7 +35,7 @@ const tableRowClassName = ({row}) => {
3635
3736
//获取当前读者的借阅信息
3837
const getBorrowByReaderId = async function () {
39-
const result = await getBorrowByReaderIdService(readerStore.reader.id);
38+
const result = await getBorrowByReaderIdService();
4039
tableData.value = result.data;
4140
if (filterStatus.value === 'all') {
4241
tableData.value = result.data;

src/views/LoginView.vue

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,8 @@ const login = async function () {
4242
//保存用户信息和token
4343
readerStore.setReader(returnReader);
4444
tokenStore.setToken(returnReader.token);
45-
//设置为管理员视图
4645
adminStore.setIsAdmin(false);
47-
console.log("tokenStore:" + tokenStore.token);
46+
// console.log("tokenStore:" + tokenStore.token);
4847
await router.push("/book");
4948
ElNotification.success({
5049
title: "登录成功",

vite.config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ export default defineConfig({
2929
port: 5173,
3030
proxy: {
3131
'/api': { //匹配请求路径中含有 /api 的请求
32+
// target: 'http://47.115.226.138:8080', //后端服务地址
3233
target: 'http://localhost:8080', //后端服务地址
3334
changeOrigin: true,
3435
rewrite: (path) => path.replace(/^\/api/, '') //去除路径中的/api,还原请求路径

0 commit comments

Comments
 (0)