From 0e053f43fe591be3e0e92e3cfb4ad90d660b0546 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 29 五月 2026 09:02:43 +0800
Subject: [PATCH] 中兴实强app 1.白屏问题解决
---
src/utils/versionUpgrade.js | 18 ++++++++++++------
1 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/src/utils/versionUpgrade.js b/src/utils/versionUpgrade.js
index e0c818a..372c813 100644
--- a/src/utils/versionUpgrade.js
+++ b/src/utils/versionUpgrade.js
@@ -1,6 +1,7 @@
import config from "@/config";
import { getAllVersion } from "@/api/viewIndex";
import bus from "@/plugins/bus";
+let hasTriggeredVersionCheckInSession = false;
function compareVersion(v1, v2) {
const s1 = String(v1 || "").replace(/[^\d.]/g, "").split(".").map((n) => Number(n) || 0);
@@ -25,12 +26,12 @@
}
async function getCurrentVersion(logPrefix) {
- let currentVersion = config?.appInfo?.version || "1.0.0";
+ let currentVersion = (config && config.appInfo && config.appInfo.version) || "1.0.0";
console.log(`${logPrefix} 寮�濮嬭幏鍙栧綋鍓嶇増鏈紝榛樿鍊�:`, currentVersion);
// #ifdef MP-WEIXIN
try {
const accountInfo = uni.getAccountInfoSync();
- if (accountInfo?.miniProgram?.version) {
+ if (accountInfo && accountInfo.miniProgram && accountInfo.miniProgram.version) {
currentVersion = accountInfo.miniProgram.version;
console.log(`${logPrefix} 褰撳墠鐜=MP-WEIXIN锛岀増鏈�=`, currentVersion);
return currentVersion;
@@ -44,14 +45,14 @@
// APP-PLUS 涓嬶紝plus.runtime.version 涓嶆槸涓氬姟鐗堟湰鍙凤紙缁忓父鏄繍琛屾椂/SDK鐗堟湰锛夛紝
// 杩欓噷鏀圭敤 getProperty 鍙栫郴缁熷眰闈㈢殑 app version銆�
// @ts-ignore
- if (plus?.runtime?.getProperty) {
+ if (plus && plus.runtime && plus.runtime.getProperty) {
// @ts-ignore
const appid = plus.runtime.appid;
const appInfo = await new Promise((resolve) => {
// @ts-ignore
plus.runtime.getProperty(appid, (info) => resolve(info || {}));
});
- const v = appInfo?.version || appInfo?.versionName || appInfo?.appVersion || "";
+ const v = (appInfo && appInfo.version) || (appInfo && appInfo.versionName) || (appInfo && appInfo.appVersion) || "";
if (v) {
currentVersion = String(v);
console.log(`${logPrefix} 褰撳墠鐜=APP-PLUS锛岀増鏈�=`, currentVersion);
@@ -89,7 +90,7 @@
},
(err) => {
console.log(`${logPrefix} 瀹夎澶辫触:`, err);
- uni.showToast({ title: err?.message || "瀹夎鏇存柊鍖呭け璐�", icon: "none" });
+ uni.showToast({ title: (err && err.message) || "瀹夎鏇存柊鍖呭け璐�", icon: "none" });
}
);
// #endif
@@ -100,7 +101,7 @@
if (!u) return "";
// 宸茬粡鏄粷瀵瑰湴鍧�锛岀洿鎺ヨ繑鍥�
if (/^https?:\/\//i.test(u)) return u;
- const base = String(config?.fileUrl || config?.baseUrl || "").replace(/\/+$/, "");
+ const base = String((config && config.fileUrl) || (config && config.baseUrl) || "").replace(/\/+$/, "");
const path = u.startsWith("/") ? u : `/${u}`;
return `${base}${path}`;
}
@@ -264,12 +265,17 @@
let lastVersionCheckAt = 0;
const triggerVersionCheck = async (from = "unknown") => {
+ if (hasTriggeredVersionCheckInSession) {
+ console.log(`${logPrefix} 璺宠繃鐗堟湰妫�鏌ワ紝鏈浼氳瘽宸叉娴嬭繃锛屾潵婧�=${from}`);
+ return;
+ }
const now = Date.now();
if (now - lastVersionCheckAt < throttleMs) {
console.log(`${logPrefix} 璺宠繃閲嶅妫�鏌ワ紝鏉ユ簮=${from}`);
return;
}
lastVersionCheckAt = now;
+ hasTriggeredVersionCheckInSession = true;
console.log(`${logPrefix} 瑙﹀彂鐗堟湰妫�鏌ワ紝鏉ユ簮=${from}`);
const currentVersion = await getCurrentVersion(logPrefix);
await checkAppVersionUpgrade(logPrefix, currentVersion);
--
Gitblit v1.9.3