设置倒计时

此方法仅限不超过一个月的倒计时

   <view> <text>{{year>9?year:"0"+year}}</text>年<text>{{month>9?month:"0"+month}}</text>月<text>{{day>9?day:"0"+day}}</text>日<text>{{hour>9?hour:"0"+hour}}</text>时<text>{{minute>9?minute:"0"+minute}}</text>分<text>{{second>9?second:"0"+second}}</text>秒</view>
page({data: {day:0,hour:0,minute:0,second:0,},// 设置倒计时 计算距离结束还有几天几时几分几秒setCountDown(endTime) {var s1 = new Date(endTime.replace(/-/g, "/")),s2 = new Date(),runTime = parseInt((s1.getTime() - s2.getTime()) / 1000);var year = Math.floor(runTime / 86400 / 365);runTime = runTime % (86400 * 365);var month = Math.floor(runTime / 86400 / 30);runTime = runTime % (86400 * 30);var day = Math.floor(runTime / 86400);runTime = runTime % 86400;var hour = Math.floor(runTime / 3600);runTime = runTime % 3600;var minute = Math.floor(runTime / 60);runTime = runTime % 60;var second = runTime;if (day < 0 || hour < 0 || minute < 0 || second < 0) {console.log("已经结束")return;}this.setData({day,hour,minute,second})console.log("日" + day + ",时" + hour + ",分" + minute + ",秒" + second)let that = thislet _setItv = setInterval(() => {that.countDownStart()}, 1000);this.setData({setItv: _setItv})},// 开始做倒计时 countDownStart() {if (this.data.day == 0 && this.data.hour == 0 && this.data.minute == 0) {if (this.data.second > 0) {this.setData({second: this.data.second - 1})} else if (this.data.second == 0) {clearInterval(this.data.setItv)console.log("倒计时结束")}} else if (this.data.day == 0 && this.data.hour == 0) {// 不会出现minute等于0if (this.data.minute > 0) {if (this.data.second > 0) {this.setData({second: this.data.second - 1})} else if (this.data.second == 0) {this.setData({second: 59,minute: this.data.minute - 1})}}} else if (this.data.day == 0) {if (this.data.hour > 0) {if (this.data.minute > 0) {if (this.data.second > 0) {this.setData({second: this.data.second - 1})} else {this.setData({second: 59,minute: this.data.minute - 1})}} else {this.setData({second: 59,minute: 59,hour: this.data.hour - 1})}}} else {if (this.data.day > 0) {if (this.data.hour > 0) {if (this.data.minute > 0) {if (this.data.second > 0) {this.setData({second: this.data.second - 1})} else {this.setData({second: 59,minute: this.data.minute - 1})}} else {this.setData({second: 59,minute: 59,hour: this.data.hour - 1})}} else {this.setData({second: 59,minute: 59,hour: 23,day: this.data.day - 1})}}}},
})

微信小程序实现给一个时间去设置倒计时相关推荐

  1. 微信小程序实现缓存过期时间

    微信小程序实现缓存过期时间 前言 一.设置缓存 二.得到缓存 总结 前言 先来看看官方文档 wx.setStorageSync(string key, any data) 将数据存储在本地缓存中指定的 ...

  2. 学习使用微信小程序动态获取当前时间并实时跳动

    学习使用微信小程序动态获取当前时间并实时跳动 1.修改util.js 2..js函数构造 3.wxml页面显示固定时间 1.修改util.js const formatTime = date => ...

  3. 关于小程序的未来,微信小程序的下一个风口

    微信小程序首创新高,但小程序未来会朝哪个方向发展呢?这不仅仅是微信官方要考虑的问题,也是每一个做小程序的企业用户需要考虑关注的问题.企业不仅要学会从微信放出的消息中了解小程序的发展方向,更要独立思考小 ...

  4. 微信小程序根据日期和时间进行排序

    一.前言 最近接手了一个小程序的项目,有这样一个需求要对列表进行日期和时间的排序,于是小试牛刀,操作了一番,终于搞出来,在这里给大家总结分享一下经验,希望对大家有一定的帮助. 二.需求分析(这是已完成 ...

  5. 微信小程序万里目_4款万里挑一的微信小程序,每一个都是黑科技!

    阅读本文前,请您先点击上面的"电子荟",再点击"关注",这样您就可以继续免费收到文章了.每天都有分享,完全是免费订阅,请放心关注. 4款万里挑一的微信小程序,每 ...

  6. 微信小程序 修改 顶部电量 时间的颜色

    微信小程序 修改 顶部电量 时间的颜色 onShow: function () {wx.setNavigationBarColor({frontColor: '#ffffff',backgroundC ...

  7. 微信小程序获取当前系统时间以及判断周几

    微信小程序获取当前系统时间以及判断周几 首先获取当前日期 在utils文件加中创建问价util.js function formatTime(date) {var year = date.getFul ...

  8. 微信小程序解决ios端时间格式兼容的问题

     微信小程序获取当时时间new Date时,会在ios真机上出现问题,具体表现为时间格式会报错并显示出NaN.这个bug并不会在模拟器和安卓系统出现,只会在ios系统上出现,具体原因是ios不支持符号 ...

  9. 微信小程序2022最新用户信息授权设置

    微信小程序2022最新用户信息授权设置 微信小程序中 用户信息授权 一直是一个非常重要的功能,它有着提升用户体验.进行用户身份认证.便于开发者进行数据分析等作用. -- 但是用户授权功能涉及到用户隐私 ...

最新文章

  1. 戚薇在冰箱放香水,是贫穷限制了想象力!
  2. 只需1秒,无人机就能平地翻跟头 | IEEE
  3. Win7远程桌面不能连接的解决方案
  4. JAVA进阶教学之(Date日期的处理)
  5. multipartfile 获取文件路径_Excel工作表中的20个信息函数,获取文件路径,单元格格式等!...
  6. codewars033: Duplicate Encoder 重复编码器
  7. 一键抠图工具有哪些?这5款亲测好用
  8. 使用 Amazon Lake Formation 和 Amazon Glue 设计数据网格架构
  9. 白帽子讲web安全笔记
  10. 几个轻巧好用的代码检查工具!代码不在坏味道
  11. HTTP长连接与短链接以及推送技术原理
  12. 5 matlab详解牛顿下山法求解复杂函数代数方程和超越方程
  13. pyqt5显示日期与时间
  14. 转换 wav,ape,flac 音乐为 mp3,m4a(mp4) 格式
  15. 1143-最长公共子序列(最长公共子序列)
  16. 夫妻财产公证有法律效力吗
  17. leetcode解题思路分析(一百三十)1093 - 1096 题
  18. 杭州电子商务研究院发布“独立站”新概念
  19. 进程二(进程的消亡以及释放资源,exec函数族的使用)
  20. css_flex弹性盒模型/flex布局/flex在线可视化工具

热门文章

  1. 【论文泛读15】深度学习的图形相似度
  2. Solr云(SolrCloud)
  3. 子弹发生html代码,查找并替换子弹列表到html样式
  4. linux-软件包管理及RPM包管理(rmp命令管理)
  5. 【金阳光测试】--深入Monkey工具和使用--Android系列(3)2014年八月八号
  6. C语言数据类型,运算符,函数
  7. 徒步50公里,我要回武汉送外卖。【向逆行者致敬,武汉加油】
  8. 在不同操作系统上调试Web报表的网络连接方式
  9. STM32定时器-基本定时器
  10. 2019 vs 安装odt_北京市2019二级造价师考试教材出版信息,免费送考试大纲