效果图 (通过js实现对时间处理);
这是时间处理的函数, 代码注释说明的也还清楚, 这是文件链接,可以直接打开,保存一下 https://blog-static.cnblogs.com/files/yk95/commonFunc.js
1 function commentTimeHandle(dateStr) { 2 // dateStr = 2018-09-06 18:47:00" 测试时间 3 var publishTime = dateStr / 1000, //获取dataStr的秒数 打印结果--1536230820000 4 date = new Date(publishTime * 1000), //获取dateStr的标准格式 console.log(date) 打印结果 Thu Sep 06 2018 18:47:00 GMT+0800 (中国标准时间) 5 // 获取date 中的 年 月 日 时 分 秒 6 Y = date.getFullYear(), 7 M = date.getMonth() + 1, 8 D = date.getDate(), 9 H = date.getHours(), 10 m = date.getMinutes(), 11 s = date.getSeconds(); 12 // 对 月 日 时 分 秒 小于10时, 加0显示 例如: 09-09 09:01 13 if (M < 10) { 14 M = \'0\' + M; 15 } 16 if (D < 10) { 17 D = \'0\' + D; 18 } 19 if (H < 10) { 20 H = \'0\' + H; 21 } 22 if (m < 10) { 23 m = \'0\' + m; 24 } 25 if (s < 10) { 26 s = \'0\' + s; 27 } 28 // console.log("年", Y); // 年 2018 29 // console.log("月", M); // 月 09 30 // console.log("日", D); // 日 06 31 // console.log("时", H); // 时 18 32 // console.log("分", m); // 分 47 33 // console.log("秒", s); // 秒 00 34 var nowTime = new Date().getTime() / 1000, //获取此时此刻日期的秒数 35 diffValue = nowTime - publishTime, // 获取此时 秒数 与 要处理的日期秒数 之间的差值 36 diff_days = parseInt(diffValue / 86400), // 一天86400秒 获取相差的天数 取整 37 diff_hours = parseInt(diffValue / 3600), // 一时3600秒 38 diff_minutes = parseInt(diffValue / 60), 39 diff_secodes = parseInt(diffValue); 40 41 if (diff_days > 0 && diff_days < 3) { //相差天数 0 < diff_days < 3 时, 直接返出 42 return diff_days + "天前"; 43 } else if (diff_days <= 0 && diff_hours > 0) { 44 return diff_hours + "小时前"; 45 } else if (diff_hours <= 0 && diff_minutes > 0) { 46 return diff_minutes + "分钟前"; 47 } else if (diff_secodes < 60) { 48 if (diff_secodes <= 0) { 49 return "刚刚"; 50 } else { 51 return diff_secodes + "秒前"; 52 } 53 } else if (diff_days >= 3 && diff_days < 30) { 54 return M + \'-\' + D + \' \' + H + \':\' + m; 55 } else if (diff_days >= 30) { 56 return Y + \'-\' + M + \'-\' + D + \' \' + H + \':\' + m; 57 } 58 } 59 module.exports = { 60 timeHandle: commentTimeHandle 61 }
页面数据是自己模拟的
1 const test0Data = [ 2 { 3 content: "有人知道漫威电影的观影顺序嘛? 狗狗出门要牵狗绳,带口罩啦!!!", 4 time: \'2018-11-16 10:19:05\' 5 }, 6 { 7 content: "狗狗出门要牵狗绳,带口罩啦!!!", 8 time: \'2018-11-14 10:19:05\' 9 }, 10 { 11 content: "现在各种旅游年卡越来越多,不知道该办哪一个?主要是想周末节假日带孩子去转转,请各位了解的朋友们给点意见~谢谢~", 12 time: \'2018-11-12 16:19:05\' 13 }, 14 { 15 content: "现在配个眼镜都这么贵了?最少1000多!这个行业也太暴利了吧!", 16 time: \'2018-11-04 12:09:05\' 17 }, 18 { 19 content: "健身房跑路了,怎么办!刚办的卡,3580。老板跑路了,最近几天一个员工没有,好多会员把器材都搬走了,搬空了,怎么办?", 20 time: \'2018-09-01 22:19:05\' 21 }, 22 ] 23 module.exports = { 24 test0Data: test0Data 25 }
接着页面中去使用 时间处理的函数 和 假数据
项目的目录是这样的 所以在页面要通过 import 将其导入
1 // pages/test0/test0.js 2 import { timeHandle } from \'../../utils/commonFunc\'; 3 import { test0Data } from \'../../utils/data\'; 4 Page({ 5 data: { 6 pageData: [] 7 }, 8 onLoad: function (options) { 9 test0Data.forEach(item => { 10 /** 11 replace(/-/g, \'/\') 是为了处理IOS不兼容 2018-11-14 10:19:05 12 new Date().getTime() 获取 item 下时间的 毫秒值 13 */ 14 let d = new Date(item.time.replace(/-/g, \'/\')).getTime(); 15 item.time = timeHandle(d); 16 }); 17 }, 18 onShow: function() { 19 this.setData({ 20 pageData: test0Data 21 }) 22 } 23 })
因为之前项目的需求, 时间也较赶, 现在回过头来温习一下, 正好记录一下.
开心一刻:
程xx遭遇车祸成植物人,医生说她活下来的希望只有万分之一,唤醒更为渺茫。她的同事和亲人没放弃,并根据程xx对testing痴迷的作风,每天都在她身边念:“你测的模块上线后回滚了。”奇迹发生了,程xx醒来第一句话:确认那模块是我测的?
请发表评论