微信小程序以7天為周期連續(xù)簽到7天功能效果的示例代碼
此功能以1,2,3,4,5,6,7這樣為一周期,連續(xù)簽到的功能;
通過計算是否為整除7天計算,每7天后切換數(shù)目,從而改變周期表、
本案例只是提供案例的基本操作,進(jìn)一步涉及:每日用戶集的監(jiān)聽(日歷表,簽到統(tǒng)計,連續(xù)簽到,簽到中斷,后端數(shù)據(jù)處理)等等功能需自行在搞掂哈~
如果圖如下:
wxml結(jié)構(gòu)
<!--pages/signIn/signIn.wxml--> <view class='signIn'> <view class='sign-com'> <view class='thead'> <view class='tt'>已連續(xù)簽到</view> <view class='mm'><label class='n'>{{signNum}}</label>天</view> <view class='pp'>連續(xù)簽到7日后每日得3分</view> </view> <view class='modle'> <view class='mol'> <view class='mol-line'></view> <view class='mol-ites'> <view class="ite {{signNum>=min?'hover':''}}" data-n='{{min}}'> <label class='n'>+{{min<7?1:3}}</label> </view> <view class="ite {{signNum>=min+1?'hover':''}}" data-n='{{min+1}}'> <label class='n'>+{{min+1<7?1:3}}</label> </view> <view class="ite {{signNum>=min+2?'hover':''}}" data-n='{{min+2}}'> <label class='n'>+{{min+2<7?1:3}}</label> </view> <view class="ite {{signNum>=min+3?'hover':''}}" data-n='{{min+3}}'> <label class='n'>+{{min+3<7?1:3}}</label> </view> <view class="ite {{signNum>=min+4?'hover':''}}" data-n='{{min+4}}'> <label class='n'>+{{min+4<7?1:3}}</label> </view> <view class="ite {{signNum>=min+5?'hover':''}}" data-n='{{min+5}}'> <label class='n'>+{{min+5<7?1:3}}</label> </view> <view class="ite {{signNum>=min+6?'hover':''}}" data-n='{{max}}'> <label class='n'>+{{min+6<7?1:3}}</label> </view> </view> </view> <view class='moday'> <label class='dd'>{{min}}天</label> <label class='dd'>{{min+1}}天</label> <label class='dd'>{{min+2}}天</label> <label class='dd'>{{min+3}}天</label> <label class='dd'>{{min+4}}天</label> <label class='dd'>{{min+5}}天</label> <label class='dd'>{{max}}天</label> </view> </view> <view class='the-btn'> <button type='button' class='btn' bindtap='bindSignIn' data-num="{{signNum}}" disabled='{{signState}}' data-min="{{min}}" data-max="{{max}}" data-be="{{be}}" >簽到</button> </view> </view> </view> <view class='explax'> <view class=''>日期開始:{{min}} </view> <view class=''>日期結(jié)束:{{max}} </view> <view class=''>簽到數(shù):{{signNum}}天</view> <view class=''>切換周期的倍數(shù):{{be}}</view> </view>
js功能
// pages/signIn/signIn.js //獲取應(yīng)用實例 const app = getApp(); Page({ /** * 頁面的初始數(shù)據(jù) */ data: { //img_url: config.imgUrl, //圖片地址 //簽到模塊 signNum: 0, //簽到數(shù) signState: false, //簽到狀態(tài) min: 1, //默認(rèn)值日期第一天1 max: 7, //默認(rèn)值日期最后一天7 be: 0 //默認(rèn)倍數(shù) }, //簽到 bindSignIn(e) { var that = this, num = e.currentTarget.dataset.num; num++ wx.showToast({ icon: 'success', title: '簽到成功', }) that.setData({ signNum: num, //signState: true }) var min = e.currentTarget.dataset.min, max = e.currentTarget.dataset.max, be = e.currentTarget.dataset.be; if (num % 7 == 0) { be += 1; that.setData({ be: be }) } if (num == 7 * be + 1) { that.setData({ min: 7 * be + 1, max: 7 * be + 7 }) } }, })
有什么錯誤或優(yōu)化的地方,可以提出來,大家一起學(xué)習(xí)研究…
完整案例可訪問本人github:https://github.com/xiexikang/xcx-signIn
參考:
[js仿淘寶收貨地址列表,設(shè)置默認(rèn)地址]
[微信小程序簽到積分案列]
[微信小程序canvas生成分享圖片到相冊的案例]
到此這篇關(guān)于微信小程序以7天為周期連續(xù)簽到7天功能效果的示例代碼的文章就介紹到這了,更多相關(guān)微信小程序連續(xù)簽到7天內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
ionic2自定義cordova插件開發(fā)以及使用(Android)
這篇文章主要為大家詳細(xì)介紹了ionic2自定義cordova插件開發(fā)以及使用,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06JavaScript運動框架 鏈?zhǔn)竭\動到完美運動(五)
這篇文章主要為大家詳細(xì)介紹了JavaScript運動框架的第五部分,鏈?zhǔn)竭\動到完美運動,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05JS ES6中setTimeout函數(shù)的執(zhí)行上下文示例
這篇文章主要給大家介紹了關(guān)于JS ES6中setTimeout函數(shù)的執(zhí)行上下文的相關(guān)資料,文中給出了詳細(xì)的介紹和示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來一起看看吧。2017-04-04