vue定时器问题(单个定时器和循环定时器)

Mediapipe姿态估计——用坐标计算手指关节弯曲角度并实时标注 利用mediapipe搭建姿态检测模型;mediapipe人体标注节点坐标;mediapipe计算手指弯曲角度并实时渲染;mediapipe计算关节弯曲角度。mediapipe手势识别;mediapipe姿态检测模型;mediapipe学习。 阅读详情

有两种情况:
一、单个定时器,比如发送验证码后,显示倒计时60秒
二、在循环中创建多个定时器,比如美团未支付页面有多个订单,都是从下单时间开始倒计时15分钟
第二个情况有点复杂,弄了很久,算是踩坑了。

一、单个定时器,比如发送验证码后,显示倒计时60秒
html

        <div class="input-item">
            <span class="des">验证码</span>
            <input class="input" placeholder="填写验证码" id="validateCode" />
            <a href="javascript:void(0)" v-on:click="GetverificationCode">{{count}}</a>
        </div>

js

        data: {
            count: "获取验证码",
            timer: null,//关键
        },
        methods:{
	 //获取验证码
            GetverificationCode: function (e) {
                let that = this;
                $.ajax({
                    url: "/OrderMeal/SendVerificateCode",
                    data: {
                        phone: $("#phone").val()
                    },
                    success: function (data) {
                        if (data.isSuccess == false) {
                            $.toptip('系统繁忙,请稍后再试', 'warning');
                            return;
                        }
                        const TIME_COUNT = 60;//设置60秒
                        if (!that.timer) {
                            that.count = TIME_COUNT;
                            that.show = false;
                            that.timer = setInterval(() => {
                                if (that.count > 0 && that.count <= TIME_COUNT) {
                                    that.count--;
                                } else {
                                    clearInterval(that.timer);
                                    that.timer = null;
                                    that.count = "重新获取";
                                }
                            }, 1000)
                        }
                    }
                })
            },
},

二、在循环中创建多个定时器,比如美团未支付页面有多个订单,都是从下单时间开始倒计时15分钟

for (var i = 0; i < that.orderList.length; i++) {
       let j = i;//重点
       (function (j) {//重点,跟循环打印一个道理,否则得到的的是最后一个,而不是每一个值都有
       that.orderList[j].timer = null;//重点
       var startTime = new Date().getTime();
       var endTime = Date.parse(that.orderList[j].orderTime);//下单时间换算成毫秒
       endTime += 1800000//加30分钟(倒计时三十分钟)
       var leftTime = endTime - startTime;//下单后的30分钟-现在的时间
       if (!that.orderList[j].timer) {
       that.orderList[j].timer = setInterval(() => {
            if (leftTime > 0) {
            leftTime = leftTime - 1000
            var m = Math.floor(leftTime / 1000 / 60 % 60);
            var s = Math.floor(leftTime / 1000 % 60);
            that.$set(that.orderList[j], "Min", m)//上一篇有讲,给数组对象加新属性
            that.$set(that.orderList[j], "Sec", s)
            //console.log(that.orderList[j].Min, s)
             } else {
            clearInterval(that.orderList[j].timer);
          	that.orderList[j].timer = null;
           }
        }, 1000)
    }
 })(j)
}
告别Vivado自带编辑器!手把手教你用Sublime Text 4 + Icarus Verilog搭建FPGA开发环境(Windows 10/11) 本文详细介绍如何在Windows 10/11系统下,使用Sublime Text 4和Icarus Verilog搭建高效的FPGA开发环境,替代Vivado自带编辑器。通过配置语法检查、代码高亮和智能补全等功能,提升Verilog开发效率,实现专业级工作流。 阅读详情

相关推荐

AVM环视:系统搭建整体流程

文章目录前言一、畸变矫正鱼眼相机二、透视变换三、图像拼接四、图像融合总结 前言 由于正在做AVM环视,所以记录一下整个过程,归纳为一个系列文章,并对期间遇到的错误进行归纳整理。本文主要概括了AVM环视的大致流程和逻辑,不涉及代码部分,仅供思路参考,其中涉及的具体技术会在后期整理为小章节进行分析。 一、畸变矫正 鱼眼相机 做环视基本上使用到的是鱼眼照片,因为鱼眼相机的视角范围可以达到220°到230°,所以一个相机就可以采集到一个面的全部信息,例如汽车具有四个面,那么在汽车的前后左右分别安装一个鱼眼相机.

qq_34468890的博客 6536

Vue定时器设置 Vue简单定时任务

创建定时器 Vue的定时器分为好几种的呢,在这里我简单的写了三种来看一下,这三种分别是一次性定时器、指定时间间隔触发定时器、清除定时器。 1.1一次性定时器 //第二个参数是毫秒数 let timer = setTimeout(() => { //需要定时执行的代码 console.debug("Hello World"); }, 3000) 1.2 指定时间间隔触发定时器 let timer = setInterval(() => { //需要定时执行的代码 },500

世上哪有什么岁月静好,不过是有人替你负重前行 4万+

Navicat16/17数据库密码安全解析与实战解密指南

本文详细解析了Navicat 16/17版本中数据库密码的加密机制,并提供了实用的密码找回指南。通过导出连接文件获取加密密文,利用基于AES-128-CBC算法的本地HTML工具,可安全、离线地解密遗忘的密码。文章强调该方法仅适用于合法恢复自有密码,并给出了操作步骤与安全建议。

weixin_28835583的博客 468

Vue中 使用定时器 (setInterval、setTimeout)

开始的时候创建了一个定时器 setInterval ,时间间隔为2秒,每2秒都会调用一次函数 valChange,从而使 value 的值+1。js中定时器有两种,一个是循环执行 setInterval,另一个是定时执行 setTimeout。顾名思义,循环执行就是设置一个时间间隔,每过一段时间都会循环执行这个方法,直到这个定时器被销毁掉;开始时候创建一个定时器 setTimeout,只在2秒后执行一次方法。定时执行 setTimeout 是设置一个时间,等待时间到达的时候。

B13362260109的博客 5569

Windows Server下OnlyOffice Workspace社区版安装避坑指南(含局域网邮箱配置)

本文详细介绍了在Windows Server环境下部署OnlyOffice Workspace社区版的完整流程,特别针对企业内网环境中的邮箱配置和端口冲突等常见问题提供了实用解决方案。通过硬件资源配置建议、软件环境检查清单以及内网邮箱系统搭建方案对比,帮助用户高效搭建企业级协作平台,实现团队协作的无缝对接。

weixin_29231263的博客 450

机器学习——Anaconda下载安装教程

Anaconda详细下载安装教程

2401_83693485的博客 3068

vue定时器

使用时记得将其在生命周期函数中销毁,定时器是不随着组件的销毁而消失的,简而言之,就是这个定时器会一直存在,不论你刷新页面还是跳转其他页面都会一直执行这个定时器。方法: 设置一次性定时器setInterval 销毁一次性定时器clearInterval。方法: 设置一次性定时器setTimeout 销毁一次性定时器clearTimeout。区别:setInterval用于每隔指定的时间间隔重复执行代码。区别:setTimeout用于在指定的延迟后执行一次代码。//这里可以替换成你自己的代码。

2401_86299223的博客 3366

Unity UI适配核心:Canvas Scaler模式解析与2023版避坑指南

UI适配是游戏与应用开发中的基础挑战,其核心在于确保界面元素在不同屏幕分辨率与设备上保持视觉一致与功能可用。原理上,系统通过坐标转换与缩放计算,将设计稿的布局映射到物理屏幕。技术价值在于提升用户体验的一致性与产品的跨平台兼容性。应用场景广泛覆盖手游、PC端应用及各类交互界面。本文聚焦Unity引擎中的Canvas Scaler组件,深入剖析其Scale With Screen Size等模式的工作原理,并结合锚点设置、安全区域处理等高频搜索热词,提供解决UI错位、拉伸及异形屏适配等常见问题的工程实践方案,帮

weixin_30920597的博客 623

Vue定时器的使用和设置(图文详解)附上源码

1.一次性定时器//需要定时执行的代码,这个3000代表的是毫秒。}, 3000)1.1取消一次性定时器//清除一次性定时器2.指定时间间隔多次执行定时器//需要定时执行的代码},3000)2.1取消多次执行定时器//需要定时执行的代码},5000)

weixin_45721912的博客 3815

【STK】手把手教你利用STK进行弹道导弹和运载火箭发射仿真的相关方法全过程解析

写这个系列主要是这几年做了一些弹道导弹和运载火箭发射的相关仿真项目,stk软件由于其专业性在国内比较小众,相关的教程和书籍、经验贴都不是很多,因此新手在进行开发中容易遇到较多困难,把自己的一些经验体会写下来,一方面供自己总结回顾,另一方面也希望对大家有所帮助。这个系列计划分几篇文章写完,每章的内容结构相似,都分为①如何确定发射场位置和发射轨迹、②导入导弹和运载火箭模型、③设计模型分段动作、④飞行参数分析和相关应用这四个部分,每篇文章争取完整描述1-2个实际项目的操作过程。

weixin_44184852的博客 5988

【OpenClaw从入门到精通】第15篇:国产芯片适配实战——昇腾/龙芯/天数智芯全流程跑通(2026实测版)

2026年国产芯片AI适配迎来爆发期,OpenClaw作为轻量化本地AI智能体,已实现华为昇腾、龙芯、天数智芯等主流国产平台的全流程适配。本文基于实测数据,从背景解析、核心原理、算法优化、实操部署四个维度,详细讲解OpenClaw在香橙派昇腾开发板、龙芯3B6000M、天数彤央TY1200及联想开天X7h的部署流程,同时提供统一工具玄武CLI的使用指南。文中包含完整代码、执行结果、避坑技巧及虚拟实战案例,兼顾新手入门与进阶提升,帮助读者快速掌握国产芯片上的本地AI部署能力,实现数据隐私保护与低成本AI落地。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1008

vue中的定时器使用setIntervar和setTimeout以及clearInterval()方法停止循环

vue中的定时器使用setIntervar和setTimeout以及clearInterval()停止循环

stars______的博客 2292

YOLOv13教程:手把手教你CSP_MutilScaleEdgeInformationSelect模块 通过DSM 在空间与局部对比域上做自适应选择

绿色线条为添加CSP_MutilScaleEdgeInformationSelect后的训练效果,map50指标提升12.45,准确率提升5.44。

FJN110的博客 816

VUE中定时器的使用setInterval和setTimeout

js中定时器有两种, 一个是循环执行setInterval,另一个是定时执行setTimeout 1:setInterval 循环执行, 每隔一段时间执行一次, 多次执行。 2:setTimeout 到时间后执行, 只执行一次。 一、循环执行(setInterval) 顾名思义,循环执行就是设置一个时间间隔,每过一段时间都会执行一次这个方法,直到这个定时器被销毁掉 用法是setInterval(“方法名或方法”,“延时”), 第一个参数为方法名或者方法,注意为方法名的时...

qq_42692714的博客 1815

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

vue多个倒计时vue倒计时vue列表倒计时(单个,列表倒计时,秒杀)vue渲染列表倒计时

先看效果图!代码分别在下面展示 先看单个倒计时: 代码: <div class="titRight"> <div class="top"> <p>{{detailsListDetails.cate1_name1}}</p> <p>还有{{detailsListDetail...

boy火巨的博客 9043

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

vue非插件实现列表无限循环滚动

最近刚好有个功能需要实现列表的无限循环滚动,在网上找到vue-seamless-scroll组件,使用起来很方便,也实现我需要的功能。我去查看了插件源码,实现原理还是比较有趣的,所以就参考了一下,自己手动实现个例子。.....................

weixin_41683949的博客 1万+

coderwhy-vue学习

(新)2019Vue、Vuejs最详细教程-入门到项目实战 一、邂逅Vuejs 1、认识Vuejs 1.1 简单认识一下Vuejs Vue (读音 /vjuː/,类似于 view),不要读错。 Vue是一个渐进式的框架,什么是渐进式的呢? 渐进式意味着你可以将Vue作为你应用的一部分嵌入其中,带来更丰富的交互体验。 或者如果你希望将更多的业务逻辑使用Vue实现,那么Vue的核心库以及其生态系统...

xieanna123的博客 8485

前端定时器 setInterval 和 setTimeout

前端定时器 setInterval 和 setTimeout1.setInterval 循环执行设置循环执行销毁定时器2.setTimeout 定时执行设置定时执行3. setTimeout超时调用和setInterval 间歇调用的区别: 1.setInterval 循环执行 循环执行就是设置一个时间间隔,每过一段时间都会执行一次这个方法,直到这个定时器被销毁掉。 用法是setInterval(“方法名或方法”,“延时”), 第一个参数为方法名或者方法,注意为方法名的时候不要加括号,第二个参数为时间间隔(

litter_m的博客 1440

Vue 生命周期和定时器使用

Vue 实例在被创建时都要经过一系列的初始化过程同时在这个过程中也会运行一些叫做生命周期的函数。-Vue生命周期函数就是vue实例在某一个时间点会自动执行的函数。Vue 所有的功能的实现都是围绕其生命周期进行的,在生命周期的不同阶段调用对应的钩子函数可以实现组件数据管理和DOM渲染两大重要功能。定时器也是常用,在一段时间内执行某件事情,用处也是比较广泛的Vue八大生命周期1.beforeCreate(创建前)

路虽远行则将至,事虽难做则必成。 2855

vue列表无缝循环滚动

vue PC端列表循环滚动功能介绍:大致需求:整体思路:具体实现:完整代码: 功能介绍: 在PC端网页,包括大数据、官网、后台管理平台开发中,可能会用到这种列表循环滚动的展示。 大致需求: 列表可以使用数组循环遍历; 每隔几秒中列表数据向上滚动一定距离,展示下一条数据; 滚动到最后一条数据时重新显示第一条开始的数据(类似走马灯、banner图的循环效果); 整体思路: 使用两个定时器嵌套实现; 需要两个相同容器存放同样内容,实现无缝衔接效果; 具体实现: 完整代码: ............

weixin_40400844的博客 2951

讨论关于VUE中循环渲染数据和视图展示问题

文章目录前言一、问题描述二、问题解析1.问题展示2.解决方法总结 前言 以下问题都是我在实际项目中遇到的,对于刚入坑的小伙伴来说可能会有些许帮助,如果该篇文档有帮助到你,那么我忙里偷闲的写文章也算值了 一、问题描述 在使用vue循环渲染页面数据的时候,视图只会展示循环的最后一次数据。 二、问题解析 1.问题展示 代码如下(示例): 譬如我要实现如下的简单效果(下图为elementUI的进度条组件,我们今天是模拟这个效果,当然,不用实现这么麻烦,只需要实现把数字从0~100在页面上递增显示就可以了)..

weixin_42444237的博客 1037

Vue中使用定时器setInterval和延迟执行setTimeout

js中定时器有两种,一个是循环执行setInterval,另一个是定时执行setTimeout 一、循环执行(setInterval) 顾名思义,循环执行就是设置一个时间间隔,每过一段时间都会执行一次这个方法,直到这个定时器被销毁掉 用法是setInterval(“方法名或方法”,“延时”), 第一个参数为方法名或者方法,注意为方法名的时候不要加括号,第二个参数为时间间隔 ...

诚的博客 4639

vue中如何清除定时器

问题描述 在某个vue组件内,每隔一段时间调用一次请求获取新的数据,离开当前页面,移除定时器 解决方案 方案一:路由拦截,清除定时器 ① 在组件内设置定时器,并存储由 setInterval() 返回的 ID 值 mounted () { // 设置定时器 const testSetinterval = setInterval(() => { ...

南风 3271

定时器问题(vue的问题)

类似于其他需要在当前页面使用,离开需要销毁的组件(例如一些第三方库的picker组件等等),都可以使用此方式来解决离开后以后在背后运行的问题。综合来说,我们更推荐使用。我在a页面写一个定时,让他每秒钟打印一个1,然后跳转到b页面,此时可以看到,定时器依然在执行。这样是非常消耗性能的。该方法是通过$once这个事件侦听器器在定义完定时器之后的位置来清除定时器。

dxn16638400024的博客 604

vue中关于定时器的使用总结:

1、定时执行 (setTimeout) 在达到时间后只会执行一次,第一个参数为方法名或者方法,注意为方法名的时候不要加括号,第二个参数为时间间隔。 <template> <section> <h1>hello world~</h1> </section> </template> <script> export default { data() { return {

m0_61452987的博客 4165

Vue中使用定时器setInterval和setTimeout

js中定时器有两种,一个是循环执行setInterval,另一个是定时执行setTimeout 一、循环执行(setInterval) 顾名思义,循环执行就是设置一个时间间隔,每过一段时间都会执行一次这个方法,直到这个定时器被销毁掉 用法是setInterval(“方法名或方法”,“延时”), 第一个参数为方法名或者方法,注意为方法名的时候不要加括号,第二个参数为时间间隔 常见方法。在data中声明一个变量,定时器绑定到变量中,然后在beforeDestory中销毁这个定时器 举个例子: 方案一: 首先我在

m0_49714202的博客 4844
上一篇: vue 循环时 给对象里的数组 新增属性 同步到页面
下一篇: new Date() 日期格式处理
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值