uniapp电商小程序实现订单30分钟倒计时
程序员文章站
2022-04-17 08:36:31
本文实例为大家分享了uniapp实现订单30分钟倒计时的具体代码,供大家参考,具体内容如下倒计时函数如下:// cm 参数是截至时间-当前时间// 截至时间是后台返回的数据,当前时间通过new dat...
本文实例为大家分享了uniapp实现订单30分钟倒计时的具体代码,供大家参考,具体内容如下
倒计时函数如下:
// cm 参数是截至时间-当前时间 // 截至时间是后台返回的数据,当前时间通过new date() 的方式进行获取 runback(cm) { if (cm > 0) { // 如果时间是超过1分钟,则需要展示的样式是: x分x秒,如果是小于1分钟,则是 00分x秒 cm > 60000 ? (this.rocalltime = (new date(cm).getminutes() < 10 ? "0" + new date(cm).getminutes() : new date(cm).getminutes()) + ":" + (new date(cm).getseconds() < 10 ? "0" + new date(cm).getseconds() : new date(cm).getseconds())) : (this.rocalltime = "00:" + (new date(cm).getseconds() < 10 ? "0" + new date(cm).getseconds() : new date(cm).getseconds())); let _msthis = this; // 使用settimeout倒计时,1秒后,重复调用此函数。,直到cm =0为止,跳出这个函数 settimeout(function() { cm -= 1000; _msthis.runback(cm); }, 1000); } else { this.ispay = false } },
如果只是一个单纯的倒计时,可以通过setinterval进行处理,
let time = 1800; setinterval(function(){ time=time-1; var minute=parseint(time/60); var second=parseint(time%60); console.log('还剩'+minute+'分'+second+'秒'); },1000);
如果上面的这个倒计时函数放在页面的onload函数中,则每次这个页面加载,比如重新加载小程序的时候,都会进行30分钟倒计时,而我们想要的是,从下订单的那一刻开始进行的30分钟倒计时,所以,还是需要用第一种方式来进行处理。截至日期由后台返给的方式来。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。