From 9f8395fab13ca4b230a0f7d62636e209745c91d4 Mon Sep 17 00:00:00 2001 From: lrj <owen.stl@gmail.com> Date: 星期日, 28 九月 2025 14:16:18 +0800 Subject: [PATCH] feat: 完善注册流程的文件上传功能 --- web/src/views/login/index.vue | 41 ++++++++++++++++++++++++++++++++--------- 1 files changed, 32 insertions(+), 9 deletions(-) diff --git a/web/src/views/login/index.vue b/web/src/views/login/index.vue index 995bd4f..a8b0433 100644 --- a/web/src/views/login/index.vue +++ b/web/src/views/login/index.vue @@ -62,6 +62,8 @@ import { useRouter } from 'vue-router' import { ElMessage } from 'element-plus' import type { FormInstance, FormRules } from 'element-plus' +import { loginApi } from '@/utils/graphql' +import { setToken, setUserInfo } from '@/utils/auth' const router = useRouter() const loginFormRef = ref<FormInstance>() @@ -93,17 +95,38 @@ await loginFormRef.value.validate() loading.value = true - // TODO: 璋冪敤鐧诲綍API - // 妯℃嫙鐧诲綍 - setTimeout(() => { - localStorage.setItem('token', 'mock-token-' + Date.now()) - ElMessage.success('鐧诲綍鎴愬姛') - router.push('/') - loading.value = false - }, 1000) + // 璋冪敤鐧诲綍API + const response = await loginApi({ + phone: loginForm.phone, + password: loginForm.password + }) - } catch (error) { + // 淇濆瓨token鍜岀敤鎴蜂俊鎭� + setToken(response.token) + setUserInfo(response.userInfo) + + ElMessage.success('鐧诲綍鎴愬姛') + router.push('/') + + } catch (error: any) { console.error('鐧诲綍澶辫触:', error) + + // 鏄剧ず閿欒淇℃伅 + let errorMessage = '鐧诲綍澶辫触' + if (error.message) { + if (error.message.includes('鐢ㄦ埛涓嶅瓨鍦�')) { + errorMessage = '鐢ㄦ埛涓嶅瓨鍦紝璇锋鏌ユ墜鏈哄彿' + } else if (error.message.includes('瀵嗙爜涓嶆纭�')) { + errorMessage = '瀵嗙爜涓嶆纭紝璇烽噸鏂拌緭鍏�' + } else if (error.message.includes('娌℃湁鏉冮檺')) { + errorMessage = '鎮ㄦ病鏈夎闂潈闄愶紝璇疯仈绯荤鐞嗗憳' + } else { + errorMessage = error.message + } + } + + ElMessage.error(errorMessage) + } finally { loading.value = false } } -- Gitblit v1.8.0