此功能以1,2,3,4,5,6,7这样为一周期,连续签到的功能;
通过计算是否为整除7天计算,每7天后切换数目,从而改变周期表、此功能以1,2,3,4,5,6,7这样为一周期,连续签到的功能;本案例只是提供案例的基本操作,进一步涉及:每日用户集的监听(日历表,签到统计,连续签到,签到中断,后端数据处理)等等功能需自行在搞掂哈~如果图如下:如果图如下:wxml结构wxml结构




日期开始:{{min}}
日期结束:{{max}}
签到数:{{signNum}}天
切换周期的倍数:{{be}}





日期开始:{{min}}
日期结束:{{max}}
签到数:{{signNum}}天
切换周期的倍数:{{be}}
js功能js功能
// pages/signIn/signIn.js
//获取应用实例
const app = getApp();

Page({

/**
* 页面的初始数据
*/
data: {
//img_url: config.imgUrl, //图片地址

//签到模块
signNum: 0, //签到数
signState: false, //签到状态
min: 1, //默认值日期第一天1
max: 7, //默认值日期最后一天7
be: 0 //默认倍数


},

//签到
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
})
}

},


})
// pages/signIn/signIn.js
//获取应用实例
const app = getApp();

Page({

/**
* 页面的初始数据
*/
data: {
//img_url: config.imgUrl, //图片地址

//签到模块
signNum: 0, //签到数
signState: false, //签到状态
min: 1, //默认值日期第一天1
max: 7, //默认值日期最后一天7
be: 0 //默认倍数


},

//签到
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
})
}

},


})有什么错误或优化的地方,可以提出来,大家一起学习研究…完整案例可访问本人github:https://github.com/xiexikang/xcx-signIn完整案例可访问本人github参考:
参考:
[js仿淘宝收货地址列表,设置默认地址]
[微信小程序签到积分案列]
[微信小程序canvas生成分享图片到相册的案例][js仿淘宝收货地址列表,设置默认地址][微信小程序签到积分案列]微信小程序canvas生成分享图片到相册的案例]