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

uni-app vue3 实现72小时倒计时功能

功能介绍 ,数组项有一个下单时间 ,比如今天下单在72小时内可以继续支付,超过则默认取消订单

在这里插入图片描述

  1. 页面按钮处 加上倒计时
<!-- 倒计时 -->
<text v-if="item.timeLeft > 0">{{ formatTime(item.remaining) }}</text>
  1. 逻辑处理
// 第一步 处理接口返回的数据 原本是没有倒计时 remaining这个值的 我们根据状态给数组项加上
console.log("列表数据", res);
res.forEach((item) => {if (item.actions.pay) {const createTime = new Date(item.create_time).getTime(); // 下单时间处理item.endTime = createTime + 72 * 3600 * 1000; // 计算72小时截止时间item.remaining = 0; // 剩余时间(毫秒)item.timeLeft = true; // 倒计时状态}
})
updateAllTimers();// 第二步 统一定时器
let timer;// 第三步 更新所有倒计时
const updateAllTimers = () => {const now = Date.now();listData.value.forEach(item => {const diff = item.endTime - now;item.remaining = diff;item.timeLeft = diff > 0;});
};// 第四步 时间格式化函数
const formatTime = (milliseconds) => {if (milliseconds <= 0) return '00:00:00';const totalSeconds = Math.floor(milliseconds / 1000);const hours = Math.floor(totalSeconds / 3600).toString().padStart(2, '0');const minutes = Math.floor((totalSeconds % 3600) / 60).toString().padStart(2, '0');const seconds = (totalSeconds % 60).toString().padStart(2, '0');return `${hours}:${minutes}:${seconds}`;
};// 生命周期管理
onMounted(() => {timer = setInterval(updateAllTimers, 1000);
});// 卸载
onUnmounted(() => {clearInterval(timer);
});
http://www.xdnf.cn/news/2818.html

相关文章:

  • css中:is和:where 伪函数
  • Dia-1.6B环境搭建推理测试
  • docker本地部署ClipCascade,实现跨设备剪贴板同步
  • 【大语言模型开发】BPE算法(Byte-Pair)
  • 跨端开发技术总结
  • Python爬虫实战:获取软科网最新特定专业大学排名数据并做分析,为高考填报志愿做参考
  • 逆向设计——CWDM_splitter
  • 10.Excel:快速定位目标值
  • QT—布局管理器之BoxLayout篇
  • 【Java ee初阶】多线程(4)
  • 培养一个输出型的爱好
  • Profinet 从站转 EtherNet/IP 从站网关
  • MATLAB实现神经网络的OCR识别
  • 爬虫学习笔记(三)--Http协议
  • CSS元素动画篇:基于页面位置的变换动画
  • leetcode 19. 删除链表的倒数第 N 个结点
  • [多彩数据结构] 笛卡尔树
  • 智能Python开发工具PyCharm v2025.1——AI层级功能重磅升级
  • Ajax 提交表单与文件上传
  • Windows 图形显示驱动-待机休眠优化
  • 升级Xcode16,flutter项目报错
  • 浏览器插件,提示:此扩展程序未遵循 Chrome 扩展程序的最佳实践,因此已无法再使用
  • jeecgboot 3.8.0 集成knife4j问题一文解决
  • MCP:如何通过模型控制推理助力AI模型实现“深度思考”?
  • 机器视觉的坐标标定
  • Python分支结构全面解析与实战应用指南
  • opendds编译开发(c#封装)
  • Android WebRTC回声消除
  • 具身智能:从理论突破到场景落地的全解析
  • 小目标检测的集成融合论文阅读