diff --git a/utils/index.js b/utils/index.js index 0ee97b82..5363fa51 100644 --- a/utils/index.js +++ b/utils/index.js @@ -16,18 +16,41 @@ const environments = { // 判断当前环境 const getCurrentEnvironment = () => { - // 优先通过NODE_ENV判断 + // 1. 优先通过NODE_ENV判断 if (process && process.env && process.env.NODE_ENV) { return process.env.NODE_ENV; } - // 通过全局配置判断(例如Vercel等平台的环境变量) + // 2. 微信小程序环境判断 + if (typeof wx !== 'undefined' && wx.getAccountInfoSync) { + try { + const accountInfo = wx.getAccountInfoSync(); + const envVersion = accountInfo.miniProgram.envVersion; + // 根据微信小程序环境返回对应环境标识 + if (envVersion === 'release') { + return 'production'; // 正式版 + } else if (envVersion === 'trial') { + return 'development'; // 体验版 + } else if (envVersion === 'develop') { + return 'development'; // 开发版 + } + } catch (e) { + console.warn('获取小程序环境信息失败:', e); + } + } + + // 3. 通过全局配置判断(例如Vercel等平台的环境变量) if (typeof global !== 'undefined' && global.env) { return global.env; } - // 默认返回开发环境 - return 'development'; + // 4. 检查是否有全局的uni对象,可能是uni-app环境 + if (typeof uni !== 'undefined') { + // 可以根据实际情况添加更多uni-app环境的判断逻辑 + } + + // 默认返回生产环境,避免线上环境使用开发地址 + return 'production'; }; // 获取当前环境配置