feat: 重构用户认证逻辑,添加导航重定向功能,更新相关组件和路由
This commit is contained in:
@@ -1,11 +1,14 @@
|
||||
<script lang='ts' setup>
|
||||
import type { EmailVerifyClient, PhoneNumberVerifyClient } from "@/api/types";
|
||||
import { closeOutline } from "ionicons/icons";
|
||||
import { authClient } from "@/auth";
|
||||
import EmailLogin from "./components/email.vue";
|
||||
import PhoneNumberLogin from "./components/phone-number.vue";
|
||||
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
const userStore = useUserStore();
|
||||
|
||||
async function handleSignInEmail(value: EmailVerifyClient) {
|
||||
const { data } = await authClient.signIn.emailOtp({
|
||||
@@ -13,7 +16,8 @@ async function handleSignInEmail(value: EmailVerifyClient) {
|
||||
otp: value.otp,
|
||||
});
|
||||
if (data?.token) {
|
||||
router.back();
|
||||
userStore.setToken(data.token);
|
||||
useNavigateToRedirect(route.query.redirect as string);
|
||||
}
|
||||
}
|
||||
async function handleSignInPhoneNumber(value: PhoneNumberVerifyClient) {
|
||||
@@ -24,7 +28,8 @@ async function handleSignInPhoneNumber(value: PhoneNumberVerifyClient) {
|
||||
updatePhoneNumber: false,
|
||||
});
|
||||
if (data?.token) {
|
||||
router.back();
|
||||
userStore.setToken(data.token);
|
||||
useNavigateToRedirect(route.query.redirect as string);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -33,7 +38,11 @@ async function handleSignInPhoneNumber(value: PhoneNumberVerifyClient) {
|
||||
<IonPage>
|
||||
<IonHeader class="ion-no-border">
|
||||
<IonToolbar class="ui-toolbar">
|
||||
<ion-back-button slot="start" />
|
||||
<ion-buttons slot="start">
|
||||
<ion-button @click="$router.back()">
|
||||
<ion-icon slot="icon-only" :icon="closeOutline" />
|
||||
</ion-button>
|
||||
</ion-buttons>
|
||||
<ion-button slot="end" fill="clear" @click="router.push('/auth/signup')">
|
||||
{{ t('auth.login.signupButton') }}
|
||||
</ion-button>
|
||||
|
||||
Reference in New Issue
Block a user