/** * 环境切换辅助工具 * 用于在开发过程中快速切换不同的后端环境 */ // 环境配置映射 const ENV_CONFIG = { development: { name: '开发环境', description: '本地后端服务 (localhost:8080)', apiBase: 'http://localhost:8080/api/v1', useMock: false, color: '#52c41a' }, production: { name: '生产环境', description: '线上正式服务器(中国区)', apiBase: 'https://tral.cc/api/v1', useMock: false, color: '#f5222d' }, 'production-cn': { name: '生产环境-中国区', description: '中国区生产服务器', apiBase: 'https://api-cn.your-domain.com/api/v1', useMock: false, color: '#f5222d' }, 'production-us': { name: '生产环境-美国区', description: '美国区生产服务器', apiBase: 'https://api-us.your-domain.com/api/v1', useMock: false, color: '#fa8c16' }, 'production-eu': { name: '生产环境-欧洲区', description: '欧洲区生产服务器', apiBase: 'https://api-eu.your-domain.com/api/v1', useMock: false, color: '#13c2c2' }, test: { name: '测试环境', description: '测试服务器', apiBase: 'https://tral.cc/api/v1', useMock: false, color: '#1890ff' }, mock: { name: 'Mock模式', description: '使用本地模拟数据', apiBase: 'http://localhost:8080/api/v1', useMock: true, color: '#722ed1' } }; /** * 获取当前环境信息 */ export function getCurrentEnv() { const { config } = require('../config/index'); return { current: config.environment, config: ENV_CONFIG[config.environment], apiBase: config.apiBase, useMock: config.useMock }; } /** * 获取所有可用环境 */ export function getAllEnvs() { return ENV_CONFIG; } /** * 显示当前环境信息(已禁用) */ export function showCurrentEnv() { const envInfo = getCurrentEnv(); // 环境提示已禁用,仅返回环境信息 return envInfo; } /** * 环境启动提示(已禁用) */ export function envStartupTip() { // 环境提示已禁用 return; } /** * 检查网络连接 */ export function checkNetworkConnection() { const envInfo = getCurrentEnv(); if (typeof wx !== 'undefined') { wx.request({ url: `${envInfo.apiBase}/health`, method: 'GET', success: (res) => { if (res.statusCode === 200) { console.log('✅ 后端服务连接正常'); wx.showToast({ title: '服务连接正常', icon: 'success' }); } else { console.warn('⚠️ 后端服务响应异常:', res.statusCode); wx.showToast({ title: '服务响应异常', icon: 'none' }); } }, fail: (error) => { console.error('❌ 后端服务连接失败:', error); wx.showModal({ title: '连接失败', content: `无法连接到后端服务 ${envInfo.apiBase} 请检查: 1. 后端服务是否启动 2. 网络连接是否正常 3. 环境配置是否正确`, showCancel: false }); } }); } }