微信小程序以7天为周期连续签到7天功能效果的示例代码


Posted in Javascript onAugust 20, 2020

此功能以1,2,3,4,5,6,7这样为一周期,连续签到的功能;
通过计算是否为整除7天计算,每7天后切换数目,从而改变周期表、

本案例只是提供案例的基本操作,进一步涉及:每日用户集的监听(日历表,签到统计,连续签到,签到中断,后端数据处理)等等功能需自行在搞掂哈~

如果图如下:

微信小程序以7天为周期连续签到7天功能效果的示例代码微信小程序以7天为周期连续签到7天功能效果的示例代码

wxml结构

<!--pages/signIn/signIn.wxml-->
<view class='signIn'>
 <view class='sign-com'>
 <view class='thead'>
 <view class='tt'>已连续签到</view>
 <view class='mm'><label class='n'>{{signNum}}</label>天</view>
 <view class='pp'>连续签到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=''>日期结束:{{max}} </view>
 <view class=''>签到数:{{signNum}}天</view>
 <view class=''>切换周期的倍数:{{be}}</view>
</view>

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
 })
 }

 },


})

有什么错误或优化的地方,可以提出来,大家一起学习研究…

完整案例可访问本人github:https://github.com/xiexikang/xcx-signIn

参考:

到此这篇关于微信小程序以7天为周期连续签到7天功能效果的示例代码的文章就介绍到这了,更多相关微信小程序连续签到7天内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JS 有名函数表达式全面解析
Mar 19 Javascript
Javascript的一种模块模式
Sep 08 Javascript
JavaScript charCodeAt方法入门实例(用于取得指定位置字符的Unicode编码)
Oct 17 Javascript
js实现当复选框选择匿名登录时隐藏登录框效果
Aug 14 Javascript
javascript如何创建对象
Aug 29 Javascript
jQuery实现的图片轮播效果完整示例
Sep 12 Javascript
js字符串操作总结(必看篇)
Nov 22 Javascript
基于Vue实现图书管理功能
Oct 17 Javascript
前端MVVM框架解析之双向绑定
Jan 24 Javascript
JavaScript文档加载模式以及元素获取
Jul 28 Javascript
vue2.0 解决抽取公用js的问题
Jul 31 Javascript
ant design 日期格式化的实现
Oct 27 Javascript
微信小程序连续签到7天积分获得功能的示例代码
Aug 20 #Javascript
如何使用JavaScript实现无缝滚动自动播放轮播图效果
Aug 20 #Javascript
JavaScript 空间坐标的使用
Aug 19 #Javascript
vue插件--仿微信小程序showModel实现模态提示窗功能
Aug 19 #Javascript
jQuery实现评论模块
Aug 19 #jQuery
javaScript代码飘红报错看不懂?读完这篇文章再试试
Aug 19 #Javascript
jQuery实现简单评论功能
Aug 19 #jQuery
You might like
全国FM电台频率大全 - 28 甘肃省
2020/03/11 无线电
解析php中call_user_func_array的作用
2013/06/07 PHP
讲解WordPress开发中一些常用的debug技巧
2015/12/18 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
2016/11/09 PHP
基于jquery的15款幻灯片插件
2011/04/10 Javascript
js跨域问题浅析及解决方法优缺点对比
2014/11/08 Javascript
初步使用Node连接Mysql数据库
2016/03/03 Javascript
Bootstrap图片轮播组件使用实例解析
2016/06/30 Javascript
js倒计时简单实现代码
2016/08/11 Javascript
ionic中列表项增加和删除的实现方法
2017/01/22 Javascript
JavaScript读写二进制数据的方法详解
2018/09/09 Javascript
vue.js多页面开发环境搭建过程
2019/04/24 Javascript
解决iview table组件里的 固定列 表格不自适应的问题
2020/11/13 Javascript
[02:47]2018年度DOTA2最佳辅助位选手4号位-完美盛典
2018/12/17 DOTA
Python+django实现简单的文件上传
2016/08/17 Python
使用Python更换外网IP的方法
2018/07/09 Python
Flask框架WTForm表单用法示例
2018/07/20 Python
浅析python的优势和不足之处
2018/11/20 Python
django解决订单并发问题【推荐】
2019/07/31 Python
100行Python代码实现每天不同时间段定时给女友发消息
2019/09/27 Python
Django filter动态过滤与排序实现过程解析
2020/11/26 Python
python 操作excel表格的方法
2020/12/05 Python
中东地区为妈妈们提供一切的头号购物目的地:Sprii
2018/05/06 全球购物
什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
2012/05/23 面试题
男方父母婚礼答谢词
2014/01/25 职场文书
上班上网检讨书
2014/01/29 职场文书
建筑公司员工自我鉴定
2014/04/08 职场文书
遗产继承公证书
2014/04/09 职场文书
2014乡镇干部纪律作风整顿思想汇报
2014/09/13 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
大四学生个人总结
2015/02/15 职场文书
2015年求职自荐信范文
2015/03/04 职场文书
停电调休通知
2015/04/16 职场文书
女方离婚起诉书
2015/05/18 职场文书
2015年度考核个人工作总结
2015/10/24 职场文书
Java数据结构之堆(优先队列)
2022/05/20 Java/Android