12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- //小于10的格式化函数
- function timeFormat(param) {//小于10的格式化函数
- return param < 10 ? '0' + param : param;
- }
- //日期改为时间戳(时分秒)
- function dateNum(date) {
- date = date.substring(0, 19);
- date = date.replace(/-/g, '/');
- var timestamp = new Date(date).getTime();
- return timestamp
- }
- //倒计时函数
- function countDown(_that, endTimeList) {
- // 获取当前时间,同时得到活动结束时间数组
- let newTime = new Date().getTime();
- let countDownArr = [];
- var len = endTimeList.length
- // 对结束时间进行处理渲染到页面
- for (let i = 0; i < len;i++){
- let endTime = dateNum(endTimeList[i])
- let obj = null;
- // 如果活动未结束,对时间进行处理
- if (endTime - newTime > 0) {
- let time = (endTime - newTime) / 1000;
- // 获取天、时、分、秒
- let day = parseInt(time / (60 * 60 * 24));
- let hou = parseInt(time % (60 * 60 * 24) / 3600);
- let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
- let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
- obj = {
- day: timeFormat(day),
- hou: timeFormat(hou),
- min: timeFormat(min),
- sec: timeFormat(sec),
- status:true
- }
- } else {//活动已结束,全部设置为'00'
- obj = {
- day: '00',
- hou: '00',
- min: '00',
- sec: '00',
- status: false
- }
- }
- countDownArr.push(obj);
- }
- // 渲染,然后每隔一秒执行一次倒计时函数
- _that.setData({ countDownList: countDownArr })
- }
- module.exports = {
- countDown: countDown //倒计时函数
- }
|