宝哥软件园

安古拉JS支付倒计时功能的实现

编辑:宝哥软件园 来源:互联网 时间:2021-09-04

描述:

1.前端只负责显示倒计时,没有实际功能;

2.实际执行:在数据库中设置一个调度任务,每分钟执行一次(这样离实际情况一分钟内就会出现错误),只要订单创建时间超过15分钟,订单状态就会自动变为“取消”。

遇到困难:

1.将字符串转换为日期时,apple satari浏览器不支持“yyyy-mm-DD hh : mi :s”的格式,因此字符串必须转换为“yyyy/mm/DD hh : mi 3360s”

Newdate ($范围。秩序。createtime。替换(/-/g,'/')2。AngularJS对JavaScript自己的定时任务window.setInterval的支持并不完善,所以它需要使用自己的方法$interval

Html相关代码(使用ionic framework):

div ng-class=' { true : ' pay倒计时',false : ' ' }[pay class]' ng-bind=' pay倒计时'/div js相关代码:

$ scope . order=storage . get(' order ');//order是后台传来的订单信息,包含订单创建时间var createTime//订单创建时间var curTime//当前时间变量totalSecond//如果($scope.order.createtime!=null){ //为了支持safari浏览器create time=new date($ scope . order . create time . replace(/-/g,'/'))。gettime();curTime=新日期()。getTime();total second=math . round((create time 15 * 60 * 1000-curTime)/1000);} else { totalSecond=15 * 60}/* * *付款倒计时*/time colorse=$ interval(function(){ if(total second=0){ var t1=math。楼层(总计秒/60);var m=t1 10?0 ' t1 : t1var T2=total second-t1 * 60;var s=t2 10?0 ' t2 : t2total second=total second-1;$ scope . pay class=true;//add class $ scope . pay倒计时='付款剩余时间:' m '分钟'秒' } else { $ scope.confirmPay=true$ scope . pay class=true;//添加class $ scope . pay倒计时='付款超时,请重新下单!';$ interval . cancel(TiME colorse);//结束倒计时} },1000) css代码:pay倒计时{ color: # FFFFFF背景色:红色;文本对齐:居中;padd :14 px 0;Opacity:0.8 }运行效果:

补充:

Oracle计划任务代码:

begin sys . DBMS _ job . submit(job=: job,what=' UpdateOrderStatues',next _ date=to _ date(' 05-06-2017 10:05:50 ',' DD-mm-yyyy hh 24:m i: s '),interval=' sysdate 1/1440 ');提交;结束;/以上是边肖介绍的AngularJS支付倒计时功能的实现思路。希望对大家有帮助。如果你有任何问题,请给我留言,边肖会及时回复你。非常感谢您对我们网站的支持!

更多资讯
游戏推荐
更多+