From db685b04e52efd75213ef7540fdc0bed7dccfd9e Mon Sep 17 00:00:00 2001
From: wangrong <wangrong@shsening.com>
Date: 星期一, 26 十月 2026 21:13:37 +0800
Subject: [PATCH] 更新小程序

---
 App.vue |   56 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 45 insertions(+), 11 deletions(-)

diff --git a/App.vue b/App.vue
index d6cd1d8..9ef2341 100644
--- a/App.vue
+++ b/App.vue
@@ -1,23 +1,57 @@
 <script setup lang="ts">
-import { useStore } from "/@/cool";
+import { useStore, storage } from "/@/cool";
+import { miniAutoLogin, phoneAuthState } from "/@/cool/mini-login";
+import { i18n } from "/@/locale";
 import { onLaunch, onShow, onHide } from "@dcloudio/uni-app";
+
+let booted = false;
+
+function boot() {
+	if (booted) {
+		return;
+	}
+	booted = true;
+
+	const { dict, user } = useStore();
+	const authState = phoneAuthState();
+
+	try {
+		const locale = uni.getLocale();
+		if (locale) {
+			i18n.global.locale = locale;
+		}
+	} catch (err) {
+		console.error(err);
+	}
+
+	dict.refresh()?.catch(() => undefined);
+
+	// #ifdef MP-WEIXIN
+	miniAutoLogin()
+		.catch(() => false)
+		.finally(() => {
+			authState.ready = true;
+			if (user.token && !storage.isExpired("token")) {
+				user.get()?.catch(() => undefined);
+			}
+		});
+	// #endif
+
+	// #ifndef MP-WEIXIN
+	authState.ready = true;
+	if (user.token) {
+		user.get()?.catch(() => undefined);
+	}
+	// #endif
+}
 
 onLaunch(() => {
 	console.log("App Launch");
-
-	const { dict, user } = useStore();
-
-	// 鑾峰彇瀛楀吀
-	dict.refresh();
-
-	if (user.token) {
-		// 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
-		user.get();
-	}
 });
 
 onShow(() => {
 	console.log("App Show");
+	setTimeout(boot, 0);
 });
 
 onHide(() => {

--
Gitblit v1.9.1