var cfg={ Version:'Uat',//Dev:开发环境,Uat:Uat环境,Relese正式环境 DevApi:'http://192.168.110.54:8000/',//开发环境 UatApi:'http://114.55.111.217/',//UAT环境 ReleseApi:'http://relese:3169/api/'//Relese环境 } export default { baseURL : cfg.Version=='Dev'?cfg.DevApi:(cfg.Version=='Uat'?cfg.UatApi:cfg.ReleseApi), guid:function generateUUID() { return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { const r = Math.random() * 16 | 0; const v = c === 'x' ? r : (r & 0x3 | 0x8); return v.toString(16); }); }, alert: function(title, content, callback) { if(!title){ title='提示' } if(!content){ content=title; } uni.showModal({ title: title, content: content, success: function(res) { if (res.confirm) { console.log('用户点击确定'); } else if (res.cancel) { console.log('用户点击取消'); } if (callback) { callback(res); } } }); }, showLoading:function(title,mask){ uni.showLoading({ title:title, mask:mask, }) }, hideLoading:function(){ uni.hideLoading(); }, showToast:function(title,mask,duration,callback){ if(!duration){ duration=1500; } if(mask==undefined){ mask=false; } uni.showToast({ title:title, mask:mask, duration:duration, callback:callback, icon: 'none' }) }, GetData:function(url,data,method,contentType,succ,err,complete){ var these=this; if(!url){ console.error("url为空"); return; } if(url.toLowerCase().indexOf('http://')==-1 || url.toLowerCase().indexOf('https://')==-1){ if(url.indexOf('/')==0){ url=url.substr(1,url.length-1); } let ServerPath=these.DevApi; if(these.Version==='Dev'){ ServerPath=these.DevApi; } else if(these.Version==='Uat'){ ServerPath=these.UatApi; } else if(these.Version==='Relese'){ ServerPath=these.ReleseApi; }else{ these.DevApi } url=ServerPath+url; } var these=this; if(!method){ method='POST'; } method=method.toUpperCase(); if(!contentType){ contentType='application/json;charset=UTF-8'; } these.checkLAN( function(){ these.showLoading('请稍候..',true); setTimeout(function(){ uni.request({ url:url, data:data, header:{ "Content-Type":contentType }, method:method, timeout:60000, dataType:'json', success:function(json){ if(succ){ succ(json); } }, fail:function(ex){ if(err){ err(ex); } }, complete:function(){ if(complete){ complete(); } } }); },0); } ,function(){ these.showToast('无网络连接'); }); }, checkLAN:function(succ,error){ uni.getNetworkType({ success: (res) => { const networkType = res.networkType; // 判断网络是否连接 if (networkType === 'none') { console.error('无网络连接') if(error){ error(); } }else{ if(succ){ succ(); } } }, fail: (err) => { console.error('获取网络状态失败:', err); if(error){ error(); } } }); }, DateFormat: function(date, format) { if(!date){ date=new Date(); } if(!format){ format='yyyy-MM-dd HH:mm:ss'; } // 处理参数默认值 if (typeof date === 'string' || typeof date === 'number') { date = new Date(date); } date = date instanceof Date ? date : new Date(); format = format || 'yyyy-MM-dd'; // 检查日期是否有效 if (isNaN(date.getTime())) { return 'Invalid Date'; } // 定义格式化映射 const formatMap = { 'yyyy': date.getFullYear(), 'MM': String(date.getMonth() + 1).padStart(2, '0'), 'dd': String(date.getDate()).padStart(2, '0'), 'HH': String(date.getHours()).padStart(2, '0'), 'mm': String(date.getMinutes()).padStart(2, '0'), 'ss': String(date.getSeconds()).padStart(2, '0'), 'SSS': String(date.getMilliseconds()).padStart(3, '0'), 'M': date.getMonth() + 1, 'd': date.getDate(), 'H': date.getHours(), 'm': date.getMinutes(), 's': date.getSeconds(), 'S': date.getMilliseconds() }; // 替换格式字符串中的占位符 return format.replace(/(yyyy|MM|dd|HH|mm|ss|SSS|M|d|H|m|s|S)/g, (match) => { return formatMap[match]; }); } }