Android中实现微信小程序支付倒计时功能的教程

看效果

由于web 经验弱爆- -  一开始我的思路是找事件,但是看了半天API 基本都是点击触摸,通过物理触发- -

我居然忽略了生命周期,生命周期+线程不就完全OK吗~

事实证明,线程还是王道啊,一开始就应该这么搞嘛~

度娘上面也看了很多都是用js写的,but,可能刚做没几天吧,我对js与微信小程序掌握还不够熟练

思路:

  1. onLoad:function(options)调用倒计时方法函数
  2. 定义线程进行数据动态现实

1. 日期转化成毫秒

2.定义线程动态显示

3.渲染倒计时

1.毫秒转成固定格式

2. 处理分秒位数不足的补0

看代码了

wxml:

<viewclass="pay_time">

 <image src="{{imgUrls_pay_time}}"></image>

 <text>支付剩余时间:</text>

 <text>{{clock}} </text>

</view>

wxjs:

// pages/order/take_order/pay/pay.js

var app = getApp()

Page({

 data: {

  imgUrls_pay_time:'/image/icon_orderstatus_countdown.png',

  "productName":"",

  "productPrice":"",

  "payDetail": [],

  "wxPayMoneyDesc":"",

  "expireTime":"",

  clock:''

 },

 onLoad: function (options) {

  // 页面初始化 options为页面跳转所带来的参数

  newapp.WeToast()

  var that =this;

  that.count_down();

 },

 onReady: function () {

  // 页面渲染完成

 },

 onShow: function () {

  // 页面显示

 },

 onHide: function () {

  // 页面隐藏

 },

 onUnload: function () {

  // 页面关闭

 },

 /* 毫秒级倒计时 */

 count_down: function () {

  var that = this

  //2016-12-27 12:47:08 转换日期格式

  var a = that.data.expireTime.split(/[^0-9]/);

  //截止日期:日期转毫秒

  var expireMs = new Date(a[0], a[1] - 1, a[2], a[3], a[4], a[5]);

  //倒计时毫秒

  var duringMs = expireMs.getTime() - (new Date()).getTime();

  // 渲染倒计时时钟

  that.setData({

   clock: that.date_format(duringMs)

  });

  if (duringMs <= 0) {

   that.setData({

    clock: "支付已截止,请重新下单"

   });

   // timeout则跳出递归

   return;

  }

  setTimeout(function () {

   // 放在最后--

   duringMs -= 10;

   that.count_down();

  }

   , 10)

 },

  /* 格式化倒计时 */

 date_format: function (micro_second) {

  var that = this

  // 秒数

  var second = Math.floor(micro_second / 1000);

  // 小时位

  var hr = Math.floor(second / 3600);

  // 分钟位

  var min = that.fill_zero_prefix(Math.floor((second - hr * 3600) / 60));

  // 秒位

  var sec = fill_zero_prefix(second % 60);// equal to => var sec = second % 60;

  return hr + ":" + min + ":" + sec + " ";

 },

 /* 分秒位数补0 */

 fill_zero_prefix: function (num) {

  returnnum <10?"0"+ num : num

 }

})

tip:

如果不进行位数补0

将会显示如下

时间: 2024-09-20 00:28:27

Android中实现微信小程序支付倒计时功能的教程的相关文章

微信小程序上线广告功能 打造O2O闭环

6月16日开始,通过微信小程序入口搜索"酒店"."水果"等关键字时,会看到标注有"广告"字眼的第三方服务信息.来自微信内部的消息是,小程序关键词推广确实在灰度内测阶段,不仅测试的商户很少,也并非每个微信用户都能搜到.微信小程序上线之初即承载着微信连结线下消费场景的想法,线下店铺通过微信小程序可以实现不同的功能,比如买电影票.餐厅排号.餐馆点菜.查询公交等. 就在广告测试两天前,小程序借助微信公开课北京站的活动,首次聚焦"商业零售&quo

微信小程序新增推广功能,支持自定义关键词

为方便用户找到所需小程序,并帮助小程序更准确地触达用户,微信小程序向开发者提供了自定义关键词的功能.小程序后台新增推广功能,支持开发者添加与业务相关的自定义关键词.开发者可在小程序后台的 "推广" 模块中,配置与小程序业务相关的关键词.关键词在配置生效后,会和小程序的服务质量.用户使用情况.关键词相关性等因素,共同影响搜索结果. 关键词的搜索策略,将于6月9日正式生效.届时,开发者完成关键词设置后,微信用户可以通过搜索关键词,找到相关的小程序.   开发者可在小程序后台的 "

微信小程序自定义多功能模态对话框案例实战

   这段时间刚好在做微信小程序相关项目开发,发现微信官方提供的小程序弹窗功能有限, 有些功能根本没法实现,这篇文章主要介绍微信小程序项目实战之自定义模态对话框wxDialog,处理一些复杂的弹窗逻辑业务,采用了仿原生.wxui写法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下哈~~~ 先来个demo预览页面: api配置参数如下: var config = { type: '', //设置弹窗显示类型 ->默认:0 (0表示信息框,1表示页面层) title: '', //标题 conte

撸了一个微信小程序项目

学会一项开发技能最快的步骤就是:准备,开火,瞄准.最慢的就是:准备,瞄准,瞄准,瞄准-- 因为微信小程序比较简单,直接开撸就行,千万别瞄准. 于是乎,趁着今天上午空气质量不错,撸了一个小程序,放在了男性交友网站上了, 我添加了很全的注释,大家赏个star. 地址:https://github.com/yll2wcf/wechat-weapp-lifeTools 功能介绍 功能比较简单,调用了百度ApiStore的接口即时查询空气质量. 我计划多加一些功能,争取把微信小程序提供的功能全用一遍. 也

微信小程序开发(1) 天气预报

本文介绍如何使用微信小程序开发天气预报功能.   一.项目文件列表   二.小程序配置 使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径.窗口表现.设置网络超时时间.设置多 tab 等. { "pages":[ "pages/index/index" ], "window":{ "backgroundTextStyle":"light", "navigationBarBack

动手开发一个名为“微天气”的微信小程序(上)

引言:在智能手机软件的装机量中,天气预报类的APP排在比较靠前的位置.说明用户对天气的关注度很高.因为人们无论是工作还是度假旅游等各种活动都需要根据自然天气来安排.跟着本文开发一个"微天气"小程序,方便微信网友随时查看天气. 接下来两天小编将同您一起开发一个"微天气"小程序,本文首先向大家介绍"微天气"的API与界面代码编写.本文选自<从零开始学微信小程序开发>. 在一套软件系统中,微信小程序通常是作为前端来使用的,一般还需要有后端的

微信小程序开发(2) 计算器

在这篇微信小程序开发教程中,我们将介绍如何使用微信小程序开发计算器功能. 本文主要分为两个部分,小程序主体部分及计算器业务页面部分   一.小程序主体部分 一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下:   1. 小程序逻辑 App({ onLaunch: function() { // Do something initial when launch. }, onShow: function() { // Do something when show. }, onHide: f

微信小程序刚出,小程序分析服务就出来了

2017年1月9日,张小龙兑现了曾许诺的一年之约.微信小程序正式进入人们视野,媒体争相报道,朋友圈刷屏,微信每一次大的革新都会用特有的方式改变国人现有的生活方式,与此同时也刺激着创业者的神经.小程序的出现进一步打通了内容和服务之间的通道,使品牌和用户建立更简洁高效的互动.基于亿万级的海量微信用户,可以预见小程序即将成为又一重要的用户运营平台,引爆新一轮的流量红利. 如何在小程序这波想象空间有限的红利中夺得头筹,如何通过数据统计分析提升运营效果和应用效率成了微信小程序的开发者.运营人员和市场营销人

微信小程序正式上线 下一波红利来临?

历经一年的等待后,小程序在2017年1月9日凌晨终于揭开神秘面纱,正式上线.用户现在可以通过二维码.搜索等方式体验到开发者们开发的小程序了.用户只要将微信更新至最新版本,体验过小程序后,便可在发现页面看到小程序TAB,但微信并不会通过这个地方向用户推荐小程序.值得一提的是,小程序提供了显示在聊天顶部的功能,这意味着用户在使用小程序的过程中可以快速返回至聊天界面,而在聊天界面也可快速进入小程序,实现小程序与聊天之间的便捷切换. 微信小程序展示的位置 用户使用过的小程序,将以列表的方式呈现在小程序T