92 lines
2.6 KiB
JavaScript
92 lines
2.6 KiB
JavaScript
'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
|
|
}
|