From 6330edba0077cc179fb9bfea48ad13155566d1b6 Mon Sep 17 00:00:00 2001 From: jacobxu666 Date: Sun, 14 Jun 2026 17:30:05 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=94=B9=E9=80=A0=E5=85=A5=E5=8F=A3?= =?UTF-8?q?=E9=A1=B5=EF=BC=88=E8=87=AA=E5=8A=A8=E8=B7=B3=E8=BD=AC=EF=BC=89?= =?UTF-8?q?=E5=92=8C=E7=99=BB=E5=BD=95=E9=A1=B5=EF=BC=88=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E6=8E=88=E6=9D=83=E7=99=BB=E5=BD=95=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- src/App.vue | 30 ++---- src/pages/index/index.vue | 158 ++++------------------------- src/pages/login/login.vue | 203 +++++++++++++++++++++++++------------- 3 files changed, 167 insertions(+), 224 deletions(-) diff --git a/src/App.vue b/src/App.vue index 381e880..d57fcee 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,16 +1,15 @@ @@ -19,15 +18,4 @@ page { min-height: 100vh; background-color: #f5f5f5; } - -.container { - padding: 30rpx; - box-sizing: border-box; -} - -.flex-center { - display: flex; - align-items: center; - justify-content: center; -} diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue index fdccb37..3cc8c28 100644 --- a/src/pages/index/index.vue +++ b/src/pages/index/index.vue @@ -1,77 +1,36 @@ diff --git a/src/pages/login/login.vue b/src/pages/login/login.vue index 2ea1a1f..029122c 100644 --- a/src/pages/login/login.vue +++ b/src/pages/login/login.vue @@ -1,38 +1,46 @@ @@ -44,27 +52,42 @@ import { showToast } from '../../utils' const userStore = useUserStore() const loading = ref(false) +const showFallback = ref(false) const form = reactive({ username: '', password: '' }) -async function handleLogin() { +/** 微信一键登录 */ +async function handleWxLogin() { + loading.value = true + try { + await userStore.wxLogin() + showToast('登录成功', 'success') + setTimeout(() => { + uni.switchTab({ url: '/packages/user/pages/index/index' }) + }, 1000) + } catch (err: any) { + console.error('微信登录失败:', err) + showToast(err.message || '登录失败') + } finally { + loading.value = false + } +} + +/** 账号密码登录(降级方案 / H5 用) */ +async function handleFallbackLogin() { if (!form.username || !form.password) { showToast('请输入账号和密码') return } - loading.value = true try { - await userStore.login({ - username: form.username, - password: form.password - }) + await userStore.login({ username: form.username, password: form.password }) showToast('登录成功', 'success') setTimeout(() => { - uni.switchTab({ url: '/pages/profile/profile' }) + uni.switchTab({ url: '/packages/user/pages/index/index' }) }, 1000) } catch (err: any) { console.error('登录失败:', err) @@ -76,81 +99,129 @@ async function handleLogin() {