'use strict' function changeTime(date){ return [date.getFullYear(),date.getMonth() +1,date.getDate()].map(function(item){return item > 9 ? item :'0' + item}).join('-'); } function changeTimeMD(date) { return [date.getMonth() + 1, date.getDate()].join('.'); } function changeTimeDate(date) { let now = new Date(); let yesterDay = new Date(now.getTime() - 24 * 60 * 60 * 1000); if (changeTime(now) === changeTime(date)){ return '今日 ' + [changeNum(date.getHours()), changeNum(date.getMinutes())].join(':'); } else if (changeTime(yesterDay) === changeTime(date)){ return '昨日 ' + [changeNum(date.getHours()), changeNum(date.getMinutes())].join(':'); } return [date.getMonth() + 1, date.getDate()].join('月') + ' ' + [changeNum(date.getHours()), changeNum(date.getMinutes())].join(':'); } function changeTimeHoursAgo(date){ let now = new Date(); let yesterDay = new Date(now.getTime() - 24 * 60 * 60 * 1000); if (changeTime(now) === changeTime(date)) { // 计算是此刻之前几个小时 let h = Math.floor((now.getTime() - date.getTime()) / (1000 * 60 * 60)); if (h == 0) { return Math.floor((now.getTime() - date.getTime()) / (1000 * 60)) + '分钟前'; } return h + '小时前'; } else if (changeTime(yesterDay) === changeTime(date)) { return '昨天'; } else if (now.getFullYear() == date.getFullYear()){ return [date.getMonth() + 1, date.getDate()].join('月'); } return [date.getFullYear(),date.getMonth() + 1, date.getDate()].join('.'); } function changeNum(num){ return num >9 ? num : '0' + num } // 计算元素宽高 function caculateQueryHeight(className){ return new Promise((resolve,reject)=>{ const query = wx.createSelectorQuery(); query.select('.' + className).boundingClientRect(function (rect) { console.log(rect) resolve({ width: rect.width, height: rect.height, left: rect.left, right: rect.right, top: rect.top, bottom: rect.bottom }) }).exec(); }) } function confirmAlert(tips,title){ return new Promise((resolve,reject)=>{ wx.showModal({ title: title || '提示', content: tips, cancelColor: '#999999', confirmColor: '#62C4A3', success: function (info) { if (info.confirm) { resolve(info) }else{ reject() } } }) }) } function showToast(title){ wx.showToast({ title: title, icon: 'none', duration: 2000, mask: true }) } module.exports = { changeTime, changeTimeMD, changeTimeDate, caculateQueryHeight, confirmAlert, changeNum, changeTimeHoursAgo, showToast }