refactor(app): 优化登录功能并添加新组件
- 在 Column 组件中使用可选链操作符,提高代码健壮性- 添加 ItemList 组件,但未提供具体实现 - 在 login 组件中: - 引入消息提示功能 -优化登录流程,添加 loading 状态 - 修复登录后的页面跳转 - 为登录按钮添加 loading 状态和文本
This commit is contained in:
parent
bda4666782
commit
efc47a27fd
@ -8,7 +8,7 @@
|
||||
>
|
||||
<div class="relative w-full">
|
||||
<van-image
|
||||
:src="item.artwork.hdPic"
|
||||
:src="item.artwork?.hdPic"
|
||||
fit="cover"
|
||||
class="w-full"
|
||||
/>
|
||||
|
11
app/pages/home/components/ItemList/index.vue
Normal file
11
app/pages/home/components/ItemList/index.vue
Normal file
@ -0,0 +1,11 @@
|
||||
<script setup lang="ts">
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
@ -4,6 +4,7 @@ import { useI18n } from 'vue-i18n'
|
||||
import countryCode from '../countryRegion/data/index.js'
|
||||
import {senCode, userLogin} from "@/api/auth/index.js";
|
||||
import {authStore} from "~/stores/auth/index.js";
|
||||
import {message} from '@/components/x-message/useMessage.js'
|
||||
const {userInfo,token}= authStore()
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
@ -13,7 +14,8 @@ definePageMeta({
|
||||
i18n: 'login.title',
|
||||
})
|
||||
const loadingRef=ref({
|
||||
loading1:false
|
||||
loading1:false,
|
||||
loading2:false,
|
||||
})
|
||||
const isExist=ref(false)//帐号是否存在 true存在
|
||||
const isReal=ref(false) //isReal 是否实名过
|
||||
@ -108,6 +110,7 @@ const goBack = () => {
|
||||
vanSwipeRef.value?.swipeTo(pane.value)
|
||||
}
|
||||
const goLogin =async () => {
|
||||
loadingRef.value.loading2=true
|
||||
const res=await userLogin({
|
||||
telNum:phoneNum.value,
|
||||
zone:selectedZone.value,
|
||||
@ -116,12 +119,14 @@ const goLogin =async () => {
|
||||
if (res.status===0){
|
||||
userInfo.value=res.data.accountInfo
|
||||
token.value=res.data.token
|
||||
|
||||
if (!res.data.isReal){
|
||||
router.push('/realAuth');
|
||||
await router.push('/realAuth');
|
||||
}else {
|
||||
router.push('/');
|
||||
await router.push('/');
|
||||
}
|
||||
}
|
||||
loadingRef.value.loading2=false
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -170,7 +175,7 @@ const goLogin =async () => {
|
||||
{{ $t('login.reSend') }}<span v-if="countdown>0">({{countdown}})</span>
|
||||
</div>
|
||||
<div class="mt-[17px]">
|
||||
<van-button v-if="code.length === 6" type="primary" block style="height: 48px" @click="goLogin">{{
|
||||
<van-button v-if="code.length === 6" type="primary" block :loading="loadingRef.loading2" :loading-text="$t('login.login')" style="height: 48px" @click="goLogin">{{
|
||||
$t('login.login')
|
||||
}}</van-button>
|
||||
<van-button v-else type="primary" color="#D3D3D3" block style="height: 48px">{{ $t('login.login') }}</van-button>
|
||||
|
Loading…
Reference in New Issue
Block a user