小程序时间个性化显示

对于小程序的时间个性化显示,适用于评论时间的发布,关注时间的显示,浏览痕迹时间的显示等.可以自动判断距离当前时间下的距离(例如,刚刚发表评论,1小时前评论,1天前评论...)

//这里是获取时间的js,将获取到的时间传入函数getDateDiff()中,处理后返回给当前js,再渲染到前台

//建议下面的getDateDiff()函数封装到其他文件(js文件)里面,使用时引入

//传入格式化时间(如果是时间戳,请自行调整getDateDiff()函数代码)所在js

import dateTimeStamp from '../../utils/browsetime.js';//引入工具类js,browsetime.js是我封装getDateDiff()所在的js

for (var data of alldata.data) {

var time = dateTimeStamp(data.browse_time);

data.browse_time = time;

}//这里的alldata是接口获取到的数组,time在该数组里,所以需要用for循环(可以根据实际情况替换time)



//这里是封装的browsetime.js文件

//JavaScript函数:

var minute = 60;

var hour = minute * 60;

var day = hour * 24;

var halfamonth = day * 15;

var month = day * 30;



function getDateDiff(dateTimeStamp) {

var now = new Date().getTime() / 1000;

var tmp_time = new Date(dateTimeStamp).getTime() / 1000;//将查询到的格式化时间转换为时间戳

// console.log("当前的时间戳" + now);

// console.log("获得的时间戳" + tmp_time);

var diffValue = now - tmp_time;

if (diffValue < 0) {

//若日期不符则弹出窗口告之

//alert("结束日期不能小于开始日期!");

}

var monthC = diffValue / month;

var weekC = diffValue / (7 * day);

var dayC = diffValue / day;

var hourC = diffValue / hour;

var minC = diffValue / minute;



// console.log("月"+monthC);

// console.log("周"+weekC);

// console.log("日"+dayC);

// console.log("时"+hourC);

// console.log("分"+minC);



var result = '';

if (monthC >= 1) {

result = parseInt(monthC) + "个月前";

}

else if (weekC >= 1) {

result = parseInt(weekC) + "周前";

}

else if (dayC >= 1) {

result = parseInt(dayC) + "天前";

}

else if (hourC >= 1) {

result = parseInt(hourC) + "个小时前";

}

else if (minC >= 1) {

result = parseInt(minC) + "分钟前";

} else{

result = "刚刚访问";

}

return result;

}



export default getDateDiff;

猜你喜欢

转载自blog.csdn.net/weixin_42593599/article/details/82856122