feat: 登录异常问题调整

This commit is contained in:
duanshuwen
2025-12-26 22:59:44 +08:00
parent dfadb06934
commit ea56695099
8 changed files with 115 additions and 187 deletions

View File

@@ -17,17 +17,9 @@
<view class="login-agreement flex flex-items-center">
<CheckBox v-model="isAgree">
<text class="font-size-12 color-525866">我已阅读并同意</text>
<text
class="font-size-12 color-2D91FF ml-4 mr-4"
@click.stop="handleAgreeClick('service')"
>服务协议</text
>
<text class="font-size-12 color-2D91FF ml-4 mr-4" @click.stop="handleAgreeClick('service')">服务协议</text>
<text class="font-size-12 color-525866"></text>
<text
class="font-size-12 color-2D91FF ml-4 mr-4"
@click.stop="handleAgreeClick('privacy')"
>隐私协议</text
>
<text class="font-size-12 color-2D91FF ml-4 mr-4" @click.stop="handleAgreeClick('privacy')">隐私协议</text>
<text class="font-size-12 color-525866">\n</text>
<text class="font-size-12 color-525866 ml-30">授权与账号关联操作</text>
</CheckBox>
@@ -37,23 +29,13 @@
<view class="login-btn-area">
<!-- 同意隐私协议并获取手机号按钮 -->
<button
class="login-btn"
type="primary"
:open-type="needWxLogin ? 'getPhoneNumber' : ''"
@getphonenumber="getPhoneNumber"
@click="handleAgreeAndGetPhone"
>
<button class="login-btn" type="primary" :open-type="needWxLogin ? 'getPhoneNumber' : ''"
@getphonenumber="getPhoneNumber" @click="handleAgreeAndGetPhone">
手机号快捷登录
</button>
</view>
<AgreePopup
ref="agreePopup"
:visible="visible"
:agreement="computedAgreement"
@close="visible = false"
/>
<AgreePopup ref="agreePopup" :visible="visible" :agreement="computedAgreement" @close="visible = false" />
</view>
</template>
@@ -63,12 +45,14 @@ import { ref, computed } from "vue";
import {
getServiceAgreement,
getPrivacyAgreement,
checkUserPhone
} from "@/request/api/LoginApi";
import { onLogin, goBack, refreshToken } from "@/hooks/useGoLogin";
import CheckBox from "@/components/CheckBox/index.vue";
import AgreePopup from "./components/AgreePopup/index.vue";
import { zniconsMap } from "@/static/fonts/znicons.js";
import { zniconsMap } from "@/static/fonts/znicons";
import { getCurrentConfig } from "@/constant/base";
import { getStorageSyncToken } from "@/constant/token";
const needWxLogin = ref(false);
const isAgree = ref(false);
@@ -106,7 +90,7 @@ const getPhoneNumber = (e) => {
});
goBack();
})
.catch(() => {});
.catch(() => { });
};
// 处理同意协议点击事件
@@ -142,14 +126,21 @@ getPrivacyAgreementData();
// 页面显示时刷新token
onShow(async () => {
const res = await refreshToken();
const token = getStorageSyncToken();
needWxLogin.value = res;
if (token) {
const res = await checkUserPhone();
needWxLogin.value = res.data;
} else {
needWxLogin.value = true;
}
});
</script>
<style lang="scss" scoped>
@import "./styles/index.scss";
@font-face {
font-family: znicons;
src: url("@/static/fonts/znicons.ttf");