This commit is contained in:
2026-01-16 22:06:40 +08:00
parent 060cea78ea
commit 865f7fd9d6
12 changed files with 105 additions and 433 deletions
+18 -19
View File
@@ -51,6 +51,7 @@ import { useRouter } from 'vue-router'
import { message } from 'ant-design-vue'
import { UserOutlined, LockOutlined } from '@ant-design/icons-vue'
import { useUserStore } from '@/stores/modules/user'
import { userLogin, getUserInfo, getMyMenu } from '@/api/auth'
// 定义组件名称(多词命名)
defineOptions({
@@ -70,26 +71,24 @@ const formState = reactive({
const handleLogin = async () => {
loading.value = true;
try {
// 模拟登录请求
await new Promise((resolve) => setTimeout(resolve, 1000))
// 模拟登录成功
const mockUserInfo = {
id: 1,
username: formState.username,
nickname: '管理员',
email: 'admin@example.com',
role: ['admin'],
avatar: ''
let res = await userLogin({ username: formState.username, password: formState.password })
if (res.code == 1) {
userStore.setToken(res.data.access_token)
let userInfo = await getUserInfo()
if (userInfo.code == 1) {
userStore.setUserInfo(userInfo.data)
}
let menu = await getMyMenu()
if (menu.code == 1){
userStore.setMenu(menu.data)
}
message.success('登录成功');
// 跳转到首页或重定向页面
const redirect = router.currentRoute.value.query.redirect || '/'
router.push(redirect)
}
const mockToken = 'mock-token-' + Date.now()
const mockRefreshToken = 'mock-refresh-token-' + Date.now()
userStore.setToken(mockToken)
userStore.setRefreshToken(mockRefreshToken)
userStore.setUserInfo(mockUserInfo)
message.success('登录成功');
// 跳转到首页或重定向页面
const redirect = router.currentRoute.value.query.redirect || '/'
router.push(redirect)
} catch {
message.error('登录失败,请检查用户名和密码');
} finally {