当前位置: 首页 > news >正文

倒计时列表实现(小程序端Vue)

//rich-text主要用来将展示html格式的,可以直接使用这个标签
<view class="ptBox" v-for="(item,index) in orderList" :key="index">   <rich-text :nodes="item.limit_time|limitTimeFilter"></rich-text>  
</view>

引入工具方法

import {formateTimeStamp} from '@/utils/index.js'
filters: {// 拼团有效期的filterlimitTimeFilter (val){if (val > 0) {let formateLimitTimes = formateTimeStamp(val);let txt = `<div style="display:inline-block;padding:0 2px; color:#ffffff; height:43rpx; line-height: 43rpx; background-color: #F32B2B;border-radius: 4rpx ;">${formateLimitTimes.hour}</div><div style="display:inline-block;color:#F32B2B; margin:0 5rpx;">:</div><div style="display:inline-block;padding:0 2px; color:#ffffff; height:43rpx; line-height: 43rpx; background-color: #F32B2B;border-radius: 4rpx ;">${formateLimitTimes.min}</div><div style="display:inline-block;color:#F32B2B; margin:0 5rpx;">:</div><div style="display:inline-block;padding:0 2px; color:#ffffff; height:43rpx; line-height: 43rpx; background-color: #F32B2B;border-radius: 4rpx ;">${formateLimitTimes.seconds}</div>`;return txt;} else {const twtxt = `0 时 0 分 0 秒`return twtxt;}} 
}, 
async findPinTuanOrderVos(){try{ let res=await findPinTuanOrderVos(); //数组返回的restHour:剩余小时//restMinute :剩余分钟//restSecond :剩余秒this.orderList=res.map((vs)=>{ //更新数组return { //将返回的时分秒,计算成时间戳
...vs,limit_time:Number(vs.restHour*3600)+Number(vs.restMinute*60)+Number(vs.restSecond) }})this.ticker = setInterval(() => { //执行循环for(let i=0;i<res.length;i++){  //每循环一次将时间戳减一this.orderList[i].limit_time=this.orderList[i].limit_time - 1} },1000)}catch(v){} 
},

工具类封装

//utils/index.js// 计算出时间戳的具体数据:比如将85400转化为 n时n分n秒
export function formateTimeStamp (timeStamp) {var hour;var min;var seconds;hour = parseInt(timeStamp / (60 * 60)) // 计算整数小时数var afterHour = timeStamp - hour * 60 * 60 // 取得算出小时数后剩余的秒数min = parseInt(afterHour / 60) // 计算整数分seconds = parseInt(timeStamp - hour * 60 * 60 - min * 60) // 取得算出分后剩余的秒数if (hour < 10) {hour = '0' + hour}if (min < 10) {min = '0' + min;}if (seconds < 10) {seconds = '0' + seconds;}const restTime = {hour: hour,min: min,seconds: seconds}return restTime
}

http://www.lryc.cn/news/171331.html

相关文章:

  • ContentType:application/x-www-form-urlencoded请求方法遇到的坑【PHP】
  • RabbitMQ - 死信、TTL原理、延迟队列安装和配置
  • 大数据与云计算实验一
  • 实施主品牌进化战略(一):确立主品牌进化架构
  • linux搭建单机ES,集成ik分词器,文本抽取,Kibana可视化平台
  • 金融和大模型的“两层皮”问题
  • 智能生活从这里开始:数字孪生驱动的社区
  • Python计算机二级知识点整理
  • 双系统ubuntu20.04(neotic版本)从0实现Gazebo仿真slam建图
  • (JavaEE)(多线程案例)线程池 (简单介绍了工厂模式)(含经典面试题ThreadPoolExector构造方法)
  • 单播与多播mac地址
  • 反向动力学Ik学习
  • 基于Levenberg-Marquardt算法的声源定位matlab仿真
  • vscode的Emmet语法失效
  • 堆排序(大根堆)
  • Mybatis学习笔记3 在Web中应用Mybatis
  • 软件测试之功能测试详解
  • javascript选取元素的范围,可以包含父级,也可以不包含父级
  • QGIS怎么修改源代码?持续更新...
  • dev board sig技术文章:轻量系统适配ARM架构芯片平台
  • MyBatis之增删查改功能
  • Leetcode算法入门与数组丨5. 数组二分查找
  • 拓扑关系如何管理?
  • vue的由来、vue教程和M-V-VM架构思想、vue的使用、nodejs
  • 课程表 循环依赖 拓扑排序 go语言
  • 【红包雨接口设计】
  • SSL证书到期更换证书会影响排名吗?
  • 前端常用库之-JavaScript工具库lodash
  • Linux- execve()
  • 007 数据结构_堆——“C”