微信小程序以7天為周期連續(xù)簽到7天功能效果的示例代碼
此功能以1,2,3,4,5,6,7這樣為一周期,連續(xù)簽到的功能;
通過(guò)計(jì)算是否為整除7天計(jì)算,每7天后切換數(shù)目,從而改變周期表、
本案例只是提供案例的基本操作,進(jìn)一步涉及:每日用戶(hù)集的監(jiān)聽(tīng)(日歷表,簽到統(tǒng)計(jì),連續(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=''>日期開(kāi)始:{{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)用實(shí)例
const app = getApp();
Page({
/**
* 頁(yè)面的初始數(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
})
}
},
})
有什么錯(cuò)誤或優(yōu)化的地方,可以提出來(lái),大家一起學(xué)習(xí)研究…
完整案例可訪問(wèn)本人github:https://github.com/xiexikang/xcx-signIn
參考:
[js仿淘寶收貨地址列表,設(shè)置默認(rèn)地址]
[微信小程序簽到積分案列]
[微信小程序canvas生成分享圖片到相冊(cè)的案例]
到此這篇關(guān)于微信小程序以7天為周期連續(xù)簽到7天功能效果的示例代碼的文章就介紹到這了,更多相關(guān)微信小程序連續(xù)簽到7天內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
原生JS實(shí)現(xiàn)的自動(dòng)輪播圖功能詳解
這篇文章主要介紹了原生JS實(shí)現(xiàn)的自動(dòng)輪播圖功能,結(jié)合實(shí)例形式詳細(xì)分析了基于原生js實(shí)現(xiàn)輪播圖的原理、操作步驟及操作注意事項(xiàng),需要的朋友可以參考下2018-12-12
小程序統(tǒng)計(jì)來(lái)源信息的方案與具體代碼
微信小程序數(shù)據(jù)統(tǒng)計(jì),現(xiàn)在有很多的統(tǒng)計(jì)方法和統(tǒng)計(jì)工具,下面這篇文章主要給大家介紹了關(guān)于小程序統(tǒng)計(jì)來(lái)源信息的方案與具體代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09
ionic2自定義cordova插件開(kāi)發(fā)以及使用(Android)
這篇文章主要為大家詳細(xì)介紹了ionic2自定義cordova插件開(kāi)發(fā)以及使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
JavaScript運(yùn)動(dòng)框架 鏈?zhǔn)竭\(yùn)動(dòng)到完美運(yùn)動(dòng)(五)
這篇文章主要為大家詳細(xì)介紹了JavaScript運(yùn)動(dòng)框架的第五部分,鏈?zhǔn)竭\(yùn)動(dòng)到完美運(yùn)動(dòng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
基于Bootstrap框架菜鳥(niǎo)入門(mén)教程(推薦)
下面小編就為大家?guī)?lái)一篇基于Bootstrap框架菜鳥(niǎo)入門(mén)教程(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
JS ES6中setTimeout函數(shù)的執(zhí)行上下文示例
這篇文章主要給大家介紹了關(guān)于JS ES6中setTimeout函數(shù)的執(zhí)行上下文的相關(guān)資料,文中給出了詳細(xì)的介紹和示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。2017-04-04

