feature:用户登录完善
This commit is contained in:
parent
77a6853df0
commit
a255866bd4
@ -1,9 +1,10 @@
|
||||
import http from "@/utils/request";
|
||||
import type { UserInfo } from "@/store/user";
|
||||
|
||||
// 获取用户信息
|
||||
export const getUserInfo = () => {
|
||||
export const getUserInfo = (): Promise<UserInfo> => {
|
||||
return http({
|
||||
url:'/api/v1/UserControllers/My',
|
||||
method:'GET'
|
||||
})
|
||||
url: "/api/v1/UserControllers/My",
|
||||
method: "GET",
|
||||
});
|
||||
};
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { defineStore } from "pinia";
|
||||
|
||||
export const useAppStore = defineStore('User', () => {
|
||||
export const useAppStore = defineStore('App', () => {
|
||||
|
||||
//左侧菜单相关
|
||||
const menuApp = reactive({
|
||||
|
42
src/store/user.ts
Normal file
42
src/store/user.ts
Normal file
@ -0,0 +1,42 @@
|
||||
import { defineStore } from "pinia";
|
||||
|
||||
export interface UserInfo {
|
||||
birthday?: undefined | string | Date; // Adjust the type based on what you expect
|
||||
config?: undefined | any; // Replace 'any' with a more specific type if possible
|
||||
description?: undefined | string;
|
||||
email: string;
|
||||
id: string;
|
||||
jobCode?: undefined | string;
|
||||
jobName?: undefined | string;
|
||||
menuName?: undefined | string;
|
||||
sex: string;
|
||||
userName: string;
|
||||
}
|
||||
|
||||
export const useUserStore = defineStore(
|
||||
"User",
|
||||
() => {
|
||||
//用户信息
|
||||
const userInfo = reactive<UserInfo>({
|
||||
birthday: void 0,
|
||||
config: void 0,
|
||||
description: void 0,
|
||||
email: "",
|
||||
id: "",
|
||||
jobCode: void 0,
|
||||
jobName: void 0,
|
||||
menuName: void 0,
|
||||
sex: "",
|
||||
userName: "",
|
||||
});
|
||||
// 赋值
|
||||
const setUserInfo = (data: UserInfo) => {
|
||||
Object.assign(userInfo, data);
|
||||
};
|
||||
return {
|
||||
userInfo,
|
||||
setUserInfo
|
||||
};
|
||||
},
|
||||
{ persist: true }
|
||||
);
|
@ -8,17 +8,19 @@
|
||||
import { removeToken, setToken } from '@/utils/auth';
|
||||
import { useMessage } from 'naive-ui';
|
||||
import { getUserInfo } from '@/api/userApi';
|
||||
import { useUserStore } from '@/store/user';
|
||||
import type { UserInfo } from '@/store/user';
|
||||
const router = useRouter();
|
||||
const message = useMessage();
|
||||
const userStore = useUserStore();
|
||||
const init = async () => {
|
||||
try {
|
||||
const route = useRoute();
|
||||
const token = route.query.token as string; // 获取token参数
|
||||
console.log('Token:', token);
|
||||
setToken(token)
|
||||
// const result = await getUserInfo();
|
||||
// console.log(result, 'result'); //后面userInfo要存到store里面
|
||||
//TODO
|
||||
const result = await getUserInfo();
|
||||
userStore.setUserInfo(result);
|
||||
message.success('登录成功!');
|
||||
router.push('/layout');
|
||||
} catch (error) {
|
||||
|
@ -2,7 +2,7 @@
|
||||
<div class="main__container table">
|
||||
<header class="table-header">
|
||||
<n-input-group style="width:440px">
|
||||
<n-input :style="{ width: '50%' }" placeholder="请输入用户名称" v-model="roleName" />
|
||||
<n-input :style="{ width: '50%' }" placeholder="请输入用户名称" v-model:value="roleName" />
|
||||
<n-button strong secondary type="primary">
|
||||
搜索
|
||||
<template #icon>
|
||||
@ -31,7 +31,7 @@ import { DataTableColumns, NButton, useMessage } from 'naive-ui';
|
||||
|
||||
const message = useMessage();
|
||||
const tableMainRef = ref<HTMLElement | null>(null);
|
||||
const roleName = ref('');
|
||||
const roleName = ref('admin');
|
||||
const pagination = reactive<PageController>({
|
||||
pageSize: 10,
|
||||
page: 1,
|
||||
@ -93,10 +93,13 @@ const data = Array.from({ length: 10 }).map((_, index) => ({
|
||||
}));
|
||||
const init = async () => {
|
||||
try {
|
||||
const result = await getUserList(pagination);
|
||||
const result = await getUserList({
|
||||
...pagination,
|
||||
roleName: roleName.value
|
||||
});
|
||||
console.log(result, 'result');
|
||||
} catch (error) {
|
||||
|
||||
message.error(error.message);
|
||||
}
|
||||
}
|
||||
onMounted(() => {
|
||||
|
Loading…
x
Reference in New Issue
Block a user