代码优化

This commit is contained in:
GaoHao
2025-03-26 14:35:59 +08:00
parent 413222a5f0
commit 656793dae2
47 changed files with 142 additions and 4103 deletions

View File

@@ -65,44 +65,6 @@
</view>
<view v-if="vdata.loginType == 'sms' ">
<uni-forms-item name="loginPhone">
<uni-easyinput class='jeepay-easyinput' v-model="vdata.formData.loginPhone" type="number"
:maxlength="11" :disabled="!vdata.allowSendMsgFlag" placeholder="请输入手机号" :clearable="false">
<template #prefixIcon>
<image src="@/static/login/icon-phone.svg" class="input-icon" />
</template>
<template #suffixIcon>
<view class='show-tips' @tap="sendSmscodeFunc">{{ vdata.sendMsgText }}</view>
</template>
</uni-easyinput>
</uni-forms-item>
<uni-forms-item>
<!-- 手机验证码 不限制数字还是本文 如果发送为文本则无需app升级 -->
<view style="display: flex;">
<uni-easyinput class='jeepay-easyinput' :maxlength="6" placeholder="请输入验证码"
v-model="vdata.formData.vercode" :clearable="false">
<template #prefixIcon>
<image src="@/static/login/icon-sms-code.svg" class="input-icon" />
</template>
</uni-easyinput>
<image :src="vdata.formData.imgCodeUrl"
style="width: 200rpx; height: 110rpx;margin-left: 10rpx;" @click="getCode" mode="">
</image>
</view>
</uni-forms-item>
<uni-forms-item name="smsCode">
<!-- 手机验证码 不限制数字还是本文 如果发送为文本则无需app升级 -->
<uni-easyinput class='jeepay-easyinput' :maxlength="6" placeholder="请输入手机验证码"
v-model="vdata.formData.smsCode" :clearable="false">
<template #prefixIcon>
<image src="@/static/login/icon-sms-code.svg" class="input-icon" />
</template>
</uni-easyinput>
</uni-forms-item>
</view>
</uni-forms>
@@ -121,19 +83,10 @@
</template>
<script setup>
import { encrypt } from '@/commons/utils/rsaEncrypt.js'
import {
ref,
reactive,
onMounted,
watch
} from 'vue';
import {
$phoneCodeLogin,
$sendSms
} from '@/http/apiManager.js';
import { ref, reactive, onMounted, watch } from 'vue';
import { login, authCaptcha } from '@/http/api/login.js';
import storageManage from '@/commons/utils/storageManage.js'
import infoBox from '@/commons/utils/infoBox.js';
import go from '@/commons/utils/go.js'
import timer from '@/commons/utils/timer.js'
import formUtil from '@/commons/utils/formUtil.js'
@@ -255,7 +208,7 @@
// 表单验证
formUtil.validate(loginFormRef.value).then(() => {
if (!vdata.isSelectedAgreement) {
infoBox.showToast('请勾选同意用户服务协议与隐私政策')
uni.$utils.showToast('请勾选同意用户服务协议与隐私政策')
return false
}
let loginPromise = null;
@@ -274,8 +227,6 @@
}
loginPromise = login(params)
} else if (vdata.loginType == 'sms') { // 短信验证码登录
loginPromise = $phoneCodeLogin(vdata.formData.loginPhone, vdata.formData.smsCode)
}
if (loginPromise == null) {
@@ -343,53 +294,7 @@
}
/**
* 点击发送验证码的函数
*/
function sendSmscodeFunc() {
// 按钮禁用
if (!vdata.allowSendMsgFlag) {
return false;
}
// 验证失败
if (!formUtil.regexp.mobile.test(vdata.formData.loginPhone)) {
return infoBox.showToast("请输入正确的手机号")
}
if (!vdata.formData.vercode) {
return infoBox.showToast("请输入图像验证码");
}
vdata.allowSendMsgFlag = false; // 按钮禁用
let data = {
phone: vdata.formData.loginPhone,
vercode: vdata.formData.vercode,
vercodeToken: vdata.formData.vercodeToken,
}
// 发送短信验证码
$sendSms(data, 'auth').then(({
bizData
}) => {
infoBox.showSuccessToast('验证码发送成功')
timer.startTimeoutTask(1, 60, (subTime) => {
if (subTime <= 0) { // 任务结束
vdata.sendMsgText = '发送验证码'
vdata.allowSendMsgFlag = true;
return false;
}
vdata.sendMsgText = `${subTime}s后可重新发送`
})
}).catch(() => {
vdata.allowSendMsgFlag = true;
})
}
</script>
<style lang="scss">