| | |
| | | import { onLoad } from "@dcloudio/uni-app"; |
| | | import { type LoginFormData } from "@/api/auth"; |
| | | import { useUserStore } from "@/store/modules/user"; |
| | | import { getToken } from "@/utils/cache"; |
| | | import { useToast } from "wot-design-uni"; |
| | | import { ref, onMounted } from "vue"; |
| | | |
| | |
| | | } else { |
| | | redirect.value = "/pages/index/index"; |
| | | } |
| | | tryAutoLogin(); |
| | | }); |
| | | |
| | | const tryAutoLogin = async () => { |
| | | const token = getToken(); |
| | | if (!token || loading.value) return; |
| | | loading.value = true; |
| | | try { |
| | | if (!userStore.userInfo) { |
| | | await userStore.getInfo(); |
| | | } |
| | | if (!userStore.userInfo) return; |
| | | if (!userStore.isUserInfoComplete()) { |
| | | uni.navigateTo({ |
| | | url: `/pages/login/complete-profile?redirect=${encodeURIComponent(redirect.value)}`, |
| | | }); |
| | | } else { |
| | | uni.reLaunch({ |
| | | url: redirect.value, |
| | | }); |
| | | } |
| | | } finally { |
| | | loading.value = false; |
| | | } |
| | | }; |
| | | |
| | | // 登录处理 |
| | | const handleLogin = () => { |
| | | if (loading.value) return; |