export default { // 页面提示信息函数 showPrompt(msg) { uni.showToast({ title: msg, icon: 'none', mask: true }) }, // APP名称 appName() { return "惠军通" }, formatRichText(html){ let newContent= html.replace(/]*>/gi,function(match,capture){ match = match.replace(/style="[^"]+"/gi, '').replace(/style='[^']+'/gi, ''); match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, ''); match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, ''); return match; }); newContent = newContent.replace(/style="[^"]+"/gi,function(match,capture){ match = match.replace(/width:[^;]+;/gi, 'max-width:100%;').replace(/width:[^;]+;/gi, 'max-width:100%;'); return match; }); newContent = newContent.replace(/]*\/>/gi, ''); newContent = newContent.replace(/\ { if (res.confirm) { uni.setStorage({ key: "jumpUrl", data: url }) uni.setStorage({ key: "jumpType", data: type }) uni.navigateTo({ url: "/pages/login/login" }) } } }) } }, // 拨打电话 toCall(tel) { if (!tel) { this.showPrompt('暂无商家电话') return } uni.makePhoneCall({ phoneNumber: tel }); }, toBack() { uni.navigateBack({ delta: 1 }) }, // 图片预览 previewImage(url) { let urlList = [] if (typeof url == 'string') { urlList.push(url) } else { urlList = url } uni.previewImage({ urls: urlList }) }, // 登录成功后的跳转 loginSuccess() { let type = uni.getStorageSync('jumpType') // console.log(type) if (type) { let url = uni.getStorageSync('jumpUrl') // console.log(url) if (!url) { uni.navigateBack({ delta: 1 }); return } if (type == 'page') { uni.redirectTo({ url: url }) } else { uni.switchTab({ url: url, fail: error => { console.log(error) } }) } } else { // uni.switchTab({ // url: "/pages/index/index" // }) uni.navigateBack({ delta: 1 }); } }, parseNumber(num) { return num < 10 ? "0" + num : num; }, // 时间格式化基类 dateFormat(date, formatStr) { let dateObj = {}, rStr = /\{([^}]+)\}/, mons = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12']; dateObj["Y"] = date.getFullYear(); dateObj["M"] = date.getMonth() + 1; dateObj["MM"] = this.parseNumber(dateObj["M"]); dateObj["Mon"] = mons[dateObj['M'] - 1]; dateObj["D"] = date.getDate(); dateObj["DD"] = this.parseNumber(dateObj["D"]); dateObj["h"] = date.getHours(); dateObj["hh"] = this.parseNumber(dateObj["h"]); // dateObj["t"] = dateObj["h"] > 12 ? dateObj["h"] - 12 : dateObj["h"]; dateObj["t"] = dateObj["h"] dateObj["tt"] = this.parseNumber(dateObj["t"]); // dateObj["A"] = dateObj["h"] > 12 ? '下午' : '上午'; dateObj["i"] = date.getMinutes(); dateObj["ii"] = this.parseNumber(dateObj["i"]); dateObj["s"] = date.getSeconds(); dateObj["ss"] = this.parseNumber(dateObj["s"]); while (rStr.test(formatStr)) { formatStr = formatStr.replace(rStr, dateObj[RegExp.$1]); } return formatStr; }, // 时间格式 年月日时分秒 gettime(shorttime, type) { shorttime = shorttime.toString().length < 13 ? shorttime * 1000 : shorttime; let now = (new Date()).getTime(); let cha = (now - parseInt(shorttime)) / 1000 // type: 格式化类型 1为年月日时分秒 2为年月日时分 3为年月日 if (type == 1) { return this.dateFormat(new Date(shorttime), "{Y}-{MM}-{DD} {t}:{ii}:{ss}"); } else if (type == 2) { return this.dateFormat(new Date(shorttime), "{Y}-{MM}-{DD} {t}:{ii}"); } else if (type == 3) { return this.dateFormat(new Date(shorttime), "{Y}-{MM}-{DD}"); } }, // 时间格式 年月日 getDate(shorttime) { shorttime = shorttime.toString().length < 13 ? shorttime * 1000 : shorttime let now = (new Date()).getTime() let cha = (now - parseInt(shorttime)) / 1000 return this.dateFormat(new Date(shorttime), "{Y}-{MM}-{DD}"); }, // 时间格式 月日 getDateMd(shorttime) { shorttime = shorttime.toString().length < 13 ? shorttime * 1000 : shorttime let now = (new Date()).getTime() let cha = (now - parseInt(shorttime)) / 1000 return this.dateFormat(new Date(shorttime), "{MM}-{DD}"); }, getSevenDate(num) { let date1 = new Date(); //今天时间 let time1 = ((date1.getMonth() + 1) < 10 ? '0' + (date1.getMonth() + 1).toString() : (date1.getMonth() + 1)) + "-" + (date1.getDate() < 10 ? '0' + date1.getDate().toString() : date1.getDate()) let date2 = new Date(date1); date2.setDate(date1.getDate() + num); //num是正数表示之后的时间,num负数表示之前的时间,0表示今天 let time2 = (date2.getMonth() + 1) + "-" + date2.getDate(); return this.getdiffdate(time1, time2, num) }, //获取两日期之间日期列表函数 getdiffdate(stime, etime, num) { //初始化日期列表,数组 let diffdate = new Array() let i = 0 //开始日期小于等于结束日期,并循环 while (i <= num - 1) { diffdate.push({ dateStr: stime, weekStr: this.getWeek(new Date().getFullYear().toString() + "-" + stime) }) //获取开始日期时间戳 let stime_ts = new Date(stime).getTime() // console.log('当前日期:'+stime +'当前时间戳:'+stime_ts) //增加一天时间戳后的日期 let next_date = stime_ts + (24 * 60 * 60 * 1000) //拼接年月日,这里的月份会返回(0-11),所以要+1 let next_dates_y = new Date(next_date).getFullYear() + '-' let next_dates_m = (new Date(next_date).getMonth() + 1 < 10) ? '0' + (new Date(next_date).getMonth() + 1) + '-' : ( new Date(next_date).getMonth() + 1) + '-' let next_dates_d = (new Date(next_date).getDate() < 10) ? '0' + new Date(next_date).getDate() : new Date( next_date).getDate() stime = next_dates_m + next_dates_d // 增加数组key i++ } return diffdate }, // 根据日期转换星期 getWeek(dateString) { let dateArray = dateString.split("-"); let date = new Date(dateArray[0], parseInt(dateArray[1] - 1), dateArray[2]); return "周" + "日一二三四五六".charAt(date.getDay()); }, // 获取当前位置 getNowAddress() { console.log(222) return new Promise((resolve, reject) => { let mapkey = '' // #ifdef MP-WEIXIN mapkey = 'c827c04d1d74d8589ec826fce02a135a' // #endif // #ifdef APP-PLUS mapkey = '7923ab86c887ab9c77e9e28828567622 ' // #endif console.log(mapkey) let amapPlugin = new amap.AMapWX({ key: mapkey }) amapPlugin.getRegeo({ success: res => { resolve(res[0]) }, fail: error => { console.log(error) uni.showToast({ mask: true, icon: "none", title: error }) } }) }) } }