java 倒计时订单_订单列表倒计时

这篇博客展示了如何在Java中实现订单列表的倒计时功能,特别是在未支付订单场景下。通过设置一个定时器更新订单的剩余时间,并用格式化的方法显示小时、分钟和秒数。代码示例中,当倒计时结束或订单状态改变时,会从列表中移除相应的订单项。
摘要由CSDN通过智能技术生成

订单列表倒计时

未支付订单倒计时

Page({

/**

* 页面的初始数据

*/

data: {

listData: []

},

/**

* 生命周期函数--监听页面加载

*/

onLoad: function (options) {

let list = [

{

id: 1,

memberNickname: '列表1',

remainTime: 86400000,

status:0

},

{

id: 2,

memberNickname: '列表2',

remainTime: 3226000,

status: 0

},

{

id: 3,

memberNickname: '列表3',

remainTime: 3600,

status: 0

}

];

this.setData({

listData: list

});

this.setCountDown();

},

/**

* 倒计时

*/

setCountDown: function () {

let time = 100;

var that = this;

let { listData } = this.data;

for (var i = 0; i < listData.length; i++){

if (listData[i].remainTime <= 0){

console.log("倒计时结束" + listData[i].memberNickname);

listData.splice(i, 1);

continue;

}

if(listData[i].status == 0){

let formatTime = this.getFormat(listData[i].remainTime);

listData[i].remainTime -= time;

listData[i].countDown = `${formatTime.hh}:${formatTime.mm}:${formatTime.ss}`;

}

}

this.setData({

listData: listData

});

setTimeout(this.setCountDown, time);

},

/**

* 格式化时间

*/

getFormat: function (msec) {

let ss = parseInt(msec / 1000); let ms = parseInt(msec % 1000); let mm = 0; let hh = 0; if (ss > 60) {

mm = parseInt(ss / 60);

ss = parseInt(ss % 60); if (mm > 60) {

hh = parseInt(mm / 60);

mm = parseInt(mm % 60);

}

}

ss = ss > 9 ? ss : `0${ss}`;

mm = mm > 9 ? mm : `0${mm}`;

hh = hh > 9 ? hh : `0${hh}`; return { ms, ss, mm, hh };

}

})

wxml

{{item.memberNickname}}

{{item.countDown}}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值