Android中微信小程序支付倒計(jì)時(shí)功能
看效果
由于web 經(jīng)驗(yàn)弱爆- - 一開始我的思路是找事件,但是看了半天API 基本都是點(diǎn)擊觸摸,通過物理觸發(fā)- -
我居然忽略了生命周期,生命周期+線程不就完全OK嗎~
事實(shí)證明,線程還是王道啊,一開始就應(yīng)該這么搞嘛~
度娘上面也看了很多都是用js寫的,but,可能剛做沒幾天吧,我對(duì)js與微信小程序掌握還不夠熟練
思路:
- onLoad:function(options)調(diào)用倒計(jì)時(shí)方法函數(shù)
- 定義線程進(jìn)行數(shù)據(jù)動(dòng)態(tài)現(xiàn)實(shí)
1. 日期轉(zhuǎn)化成毫秒
2.定義線程動(dòng)態(tài)顯示
3.渲染倒計(jì)時(shí)
1.毫秒轉(zhuǎn)成固定格式
2. 處理分秒位數(shù)不足的補(bǔ)0
看代碼了
wxml:
<view class="pay_time"> <image src="{{imgUrls_pay_time}}"></image> <text>支付剩余時(shí)間:</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為頁面跳轉(zhuǎn)所帶來的參數(shù) new app.WeToast() var that = this; that.count_down(); }, onReady: function () { // 頁面渲染完成 }, onShow: function () { // 頁面顯示 }, onHide: function () { // 頁面隱藏 }, onUnload: function () { // 頁面關(guān)閉 }, /* 毫秒級(jí)倒計(jì)時(shí) */ count_down: function () { var that = this //2016-12-27 12:47:08 轉(zhuǎn)換日期格式 var a = that.data.expireTime.split(/[^0-9]/); //截止日期:日期轉(zhuǎn)毫秒 var expireMs = new Date(a[0], a[1] - 1, a[2], a[3], a[4], a[5]); //倒計(jì)時(shí)毫秒 var duringMs = expireMs.getTime() - (new Date()).getTime(); // 渲染倒計(jì)時(shí)時(shí)鐘 that.setData({ clock: that.date_format(duringMs) }); if (duringMs <= 0) { that.setData({ clock: "支付已截止,請(qǐng)重新下單" }); // timeout則跳出遞歸 return; } setTimeout(function () { // 放在最后-- duringMs -= 10; that.count_down(); } , 10) }, /* 格式化倒計(jì)時(shí) */ date_format: function (micro_second) { var that = this // 秒數(shù) var second = Math.floor(micro_second / 1000); // 小時(shí)位 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 + " "; }, /* 分秒位數(shù)補(bǔ)0 */ fill_zero_prefix: function (num) { return num < 10 ? "0" + num : num } })
tip:
如果不進(jìn)行位數(shù)補(bǔ)0
將會(huì)顯示如下
以上所述是小編給大家介紹的Android中微信小程序支付倒計(jì)時(shí)功能,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- 微信小程序?qū)崿F(xiàn)倒計(jì)時(shí)補(bǔ)零功能
- 微信小程序?qū)崿F(xiàn)倒計(jì)時(shí)調(diào)用相機(jī)自動(dòng)拍照功能
- 微信小程序?qū)崿F(xiàn)驗(yàn)證碼獲取倒計(jì)時(shí)效果
- 微信小程序倒計(jì)時(shí)功能實(shí)現(xiàn)代碼
- 微信小程序之發(fā)送短信倒計(jì)時(shí)功能
- 微信小程序注冊(cè)60s倒計(jì)時(shí)功能 使用JS實(shí)現(xiàn)注冊(cè)60s倒計(jì)時(shí)功能
- 微信小程序?qū)崿F(xiàn)倒計(jì)時(shí)60s獲取驗(yàn)證碼
- 微信小程序動(dòng)態(tài)顯示項(xiàng)目倒計(jì)時(shí)效果
- 微信小程序電商常用倒計(jì)時(shí)實(shí)現(xiàn)實(shí)例
- 微信小程序?qū)崿F(xiàn)團(tuán)購或秒殺批量倒計(jì)時(shí)
相關(guān)文章
基于Android自定義控件實(shí)現(xiàn)雷達(dá)效果
這篇文章主要為大家詳細(xì)介紹了基于Android自定義控件實(shí)現(xiàn)雷達(dá)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07Android自定義圓環(huán)倒計(jì)時(shí)控件
這篇文章主要為大家詳細(xì)介紹了Android自定義圓環(huán)倒計(jì)時(shí)控件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09Android監(jiān)聽鍵盤狀態(tài)獲取鍵盤高度的實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于Android監(jiān)聽鍵盤狀態(tài)獲取鍵盤高度的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Android?SharedPreferences性能瓶頸解析
這篇文章主要為大家介紹了Android?SharedPreferences性能瓶頸解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Android實(shí)現(xiàn)加載廣告圖片和倒計(jì)時(shí)的開屏布局
這篇文章主要介紹了Android實(shí)現(xiàn)加載廣告圖片和倒計(jì)時(shí)的開屏布局,需要的朋友可以參考下2014-07-07Android使用AlarmManager設(shè)置鬧鐘功能
這篇文章主要為大家詳細(xì)介紹了Android使用AlarmManager設(shè)置鬧鐘功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-09-09Android中設(shè)置WebView禁止縮放網(wǎng)頁的步驟
在Android中如果你想要禁止WebView縮放網(wǎng)頁,可以通過設(shè)置WebView的一些屬性來實(shí)現(xiàn),這篇文章主要給大家介紹了關(guān)于Android中設(shè)置WebView禁止縮放網(wǎng)頁的步驟,需要的朋友可以參考下2024-05-05Android編程設(shè)置TextView顏色setTextColor用法實(shí)例
這篇文章主要介紹了Android編程設(shè)置TextView顏色setTextColor用法,結(jié)合實(shí)例形式分析了Android設(shè)置TextView顏色setTextColor、ColorStateList等方法的使用技巧與布局文件的設(shè)置方法,需要的朋友可以參考下2016-01-01