HomeLease/unpackage/dist/dev/mp-weixin/utils/loading-manager.js

113 lines
3.3 KiB
JavaScript
Raw Normal View History

2025-08-12 15:38:25 +08:00
"use strict";
const common_vendor = require("../common/vendor.js");
const ENV_CONFIG = {
develop: {
loadingText: "开发环境加载中~",
loadingTime: 100
},
trial: {
loadingText: "体验版加载中~",
loadingTime: 100
},
release: {
loadingText: "加载中~",
loadingTime: 100
}
};
const getCurrentConfig = () => {
try {
const { envVersion } = common_vendor.wx$1.getAccountInfoSync().miniProgram;
common_vendor.index.__f__("log", "at utils/loading-manager.js:26", "当前环境:", envVersion);
return ENV_CONFIG[envVersion] || ENV_CONFIG.release;
} catch (error) {
common_vendor.index.__f__("warn", "at utils/loading-manager.js:29", "获取环境失败,默认使用正式环境:", error);
return ENV_CONFIG.release;
}
};
const config = getCurrentConfig();
let isLoading = false;
let loadingTimer = null;
let loadingCount = 0;
const setLoadingTimeout = () => {
if (loadingTimer) {
clearTimeout(loadingTimer);
}
loadingTimer = setTimeout(() => {
common_vendor.index.__f__("warn", "at utils/loading-manager.js:49", "Loading超时强制清除");
forceHideLoading();
}, 3e4);
};
function showLoading(text = config.loadingText) {
try {
loadingCount++;
if (!isLoading) {
isLoading = true;
common_vendor.index.showLoading({
title: text,
mask: true
});
setLoadingTimeout();
common_vendor.index.__f__("log", "at utils/loading-manager.js:69", "显示Loading:", text);
}
} catch (error) {
common_vendor.index.__f__("warn", "at utils/loading-manager.js:72", "显示loading失败:", error);
}
}
function hideLoading() {
try {
loadingCount--;
if (loadingCount > 0) {
common_vendor.index.__f__("log", "at utils/loading-manager.js:83", "还有其他请求在进行不隐藏Loading, 剩余请求数:", loadingCount);
return;
}
if (isLoading) {
isLoading = false;
if (loadingTimer) {
clearTimeout(loadingTimer);
loadingTimer = null;
}
common_vendor.index.hideLoading();
common_vendor.index.__f__("log", "at utils/loading-manager.js:94", "隐藏Loading");
}
} catch (error) {
common_vendor.index.__f__("warn", "at utils/loading-manager.js:97", "隐藏loading失败:", error);
}
}
function forceHideLoading() {
try {
isLoading = false;
loadingCount = 0;
if (loadingTimer) {
clearTimeout(loadingTimer);
loadingTimer = null;
}
common_vendor.index.hideLoading();
common_vendor.index.__f__("log", "at utils/loading-manager.js:113", "强制隐藏Loading");
} catch (error) {
common_vendor.index.__f__("warn", "at utils/loading-manager.js:115", "强制隐藏loading失败:", error);
}
}
class AutoLoadingManager {
constructor() {
this.isActive = false;
}
// 显示loading可选
show(text = "加载中...") {
this.isActive = true;
}
// 隐藏loading可选
hide() {
this.isActive = false;
}
// 销毁管理器
destroy() {
this.isActive = false;
}
}
exports.AutoLoadingManager = AutoLoadingManager;
exports.config = config;
exports.forceHideLoading = forceHideLoading;
exports.hideLoading = hideLoading;
exports.showLoading = showLoading;
//# sourceMappingURL=../../.sourcemap/mp-weixin/utils/loading-manager.js.map