From f027685072ea4d2cb0366e3ddfbae7efe06d9fee Mon Sep 17 00:00:00 2001 From: duanshuwen Date: Thu, 25 Dec 2025 22:45:55 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=B0=83=E6=95=B4=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 1 + src/hooks/useGoLogin.js | 48 +++++++++++++++++++++------------------ src/pages/login/index.vue | 2 +- 3 files changed, 28 insertions(+), 23 deletions(-) diff --git a/src/App.vue b/src/App.vue index cf607db..8d59ab8 100644 --- a/src/App.vue +++ b/src/App.vue @@ -2,6 +2,7 @@ import { onLaunch, onShow, onHide } from "@dcloudio/uni-app"; import { getEvnUrl } from "@/request/api/config"; import { refreshToken } from "@/hooks/useGoLogin"; +import { checkPhone } from "@/manager/LoginManager"; onLaunch(async () => { await getEvnUrl({ versionValue: "1.0.3" }); diff --git a/src/hooks/useGoLogin.js b/src/hooks/useGoLogin.js index 7bd1570..42265e3 100644 --- a/src/hooks/useGoLogin.js +++ b/src/hooks/useGoLogin.js @@ -61,30 +61,34 @@ export const checkToken = () => { }; // 刷新token -export const refreshToken = () => { +export const refreshToken = async () => { return new Promise((resolve) => { - uni.login({ - provider: "weixin", //使用微信登录 - success: async ({ code }) => { - console.log("refreshToken", code); - const params = { - openIdCode: [code], - grant_type: "wechat", - scope: "server", - clientId: clientId, - }; - console.log("获取到的微信授权params:", JSON.stringify(params)); - const response = await wxLogin(params); + checkPhone().then(async (checkRes) => { + if (!checkRes.data) { + resolve(true); + return; + } - if (response.access_token) { - setStorageSyncToken(response.access_token); - // 登录成功后,触发登录成功事件 - uni.$emit(NOTICE_EVENT_LOGIN_SUCCESS); - resolve(false) - } else { - resolve(true) - } - }, + uni.login({ + provider: "weixin", //使用微信登录 + success: async ({ code }) => { + console.log("refreshToken", code); + const params = { + openIdCode: [code], + grant_type: "wechat", + scope: "server", + clientId: clientId, + }; + console.log("获取到的微信授权params:", JSON.stringify(params)); + const response = await wxLogin(params); + + if (response.access_token) { + setStorageSyncToken(response.access_token); + // 登录成功后,触发登录成功事件 + uni.$emit(NOTICE_EVENT_LOGIN_SUCCESS); + } + }, + }); }); }); }; diff --git a/src/pages/login/index.vue b/src/pages/login/index.vue index a2eb133..8d91a2e 100644 --- a/src/pages/login/index.vue +++ b/src/pages/login/index.vue @@ -83,7 +83,7 @@ const logo = computed(() => getCurrentConfig().logo); const handleAgreeAndGetPhone = () => { // 如果需要微信登录,直接返回 if (needWxLogin.value) { - return + return; } if (!isAgree.value) {