首页 > 其他分享 >封装定时器方法

封装定时器方法

时间:2024-06-19 14:57:28浏览次数:19  
标签:定时器 const rollertimer2 onMounted 5000 timmingLoadingsTime 封装 方法

需求:查询的历史数据需要定时3分钟刷新(产品提的要求 照做!!!)

//周期性地执行指定的回调函数,并在组件销毁时清除该定时器,以防止内存泄漏或不必要的回调执行
export const timmingLoadingsTime = (callback, time) => {
  const rollertimer2 = ref(null);
  rollertimer2.value = setInterval(() => {
    if (callback) {
      callback();
    }
  }, time); //30 * 60 * 1000  30分钟
    
  //组件卸载时销毁定时器
  onUnmounted(() => {
    clearInterval(rollertimer2.value);
  });

  return {
    rollertimer2,
  };
};

在需要的文件引用该方法,如下图:

//引入封装方法
import { timmingLoadings, timmingLoadingsTime } from "@/utils/timingLoading.js";
//方式一:
<script setup>
    onMounted(()=>{
        const { rollertimer2 } = timmingLoadingsTime(() => {
            nextTag();//这是我要定时循环的代码 这里放你所需要定时的功能
        }, 5000);
    });
</script>
//方式二:
export default {
    setup(){
        const counter = ref(0);
        onMounted(() => {
            // 调用 timmingLoadingsTime 函数设置定时器
            const { rollertimer2 } = timmingLoadingsTime(() => {
                // 每次定时器触发时执行的逻辑
                counter.value++; // 假设每次递增计数器
            }, 5000); // 设置定时器间隔为 5 秒

            // rollertimer2 可以在组件中被引用和操作
        });

        return {
            counter,
        };
    }
}
//方式三:
<script setup>
    onMounted(()=>{
        //自己使用下来挺正常 因为我没看别人这么用过嘻嘻

标签:定时器,const,rollertimer2,onMounted,5000,timmingLoadingsTime,封装,方法
From: https://blog.csdn.net/weixin_61001537/article/details/139800247

相关文章

  • delphi:利用定时器读取串口返回数据
    定时器20毫秒运行一次,单字符读取,如果读取到就保存到全局变量receData中,否则就输出到文本框中,并重置receData。优点:单字符读取,解决了按长度读取的弊端,如果按长度读取,很多时候并不知道究竟要读取多长,有的时候能读取完整,有的时候只读取了部分。procedureTfrmLC.tmrReceDataTimer(S......
  • Rocky Linux yum/dnf repo/mirrors 国内镜像列表及更换方法
    RockyLinuxyum/dnfrepo/mirrors国内镜像列表及更换方法RockyLinuxMirrors请访问原文链接:https://sysin.org/blog/rocky-linux-mirrors/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org高校镜像推荐mirror.sjtu.edu.cn和mirrors.zju.edu.cn。商业公司镜像......
  • AlmaLinux yum/dnf repo/mirrors 国内镜像列表及更换方法
    AlmaLinuxyum/dnfrepo/mirrors国内镜像列表及更换方法AlmaLinuxMirrors请访问原文链接:https://sysin.org/blog/rocky-linux-mirrors/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org高校镜像推荐mirror.sjtu.edu.cn和mirrors.zju.edu.cn。商业公司镜像推荐......
  • java面向对象-封装
    一封装(面向对象的三大特征--封装)1.1封装的概念将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问1.2封装的步骤私有化(private)是一个权限修饰符。可以修饰成员(成员变量和成员方法)被private修饰的成员......
  • java spring-data-jpa 使用方法
    SpringDataJPA是Spring生态系统的一部分,它提供了对JPA(JavaPersistenceAPI)的抽象,简化了数据访问层的开发。以下是使用SpringDataJPA的基本步骤和一些核心概念:1.添加依赖        在Maven项目的pom.xml文件中添加SpringDataJPA和相关数据库驱......
  • Vue3如何绑定全局方法和变量
    Vue2中Vue.prototype绑定全局方法,此写法在Vue3已经不存在了。与任何全局的东西一样,应该谨慎使用。Vue3使用provide/inject或者app.config.globalProperties进行绑定如果全局属性与组件自己的属性冲突,组件自己的属性将具有更高的优先级。 一、provide/inject方法......
  • 百度网盘提速攻略:解决限速问题的实用方法
    百度网盘提速攻略:解决限速问题的实用方法百度网盘作为国内广受欢迎的云存储服务,为用户提供了便捷的文件存储和分享功能。然而,许多用户在使用百度网盘进行文件下载时,常常会遇到限速问题,导致下载速度极慢,极大地影响了使用体验。本文将为大家介绍一些实用的提速方法,帮助大家解......
  • ADO.NET ExecuteScalar 方法的使用及注意
    ExecuteScalar方法允许我们查询单一结果,我们来看看什么是单一结果,有那些需要注意的事项1.下面是我对 ExecuteScalar的简单封装,接下来我们看看,如何使用///<summary>///查询单一结果///</summary>///<paramname="sql"></param>///<paramname="pars"></param>......
  • 面向对象的封装性(Java)
    目录1、封装的概念2、访问限定符3、包3、1自定义包3、2 常见的包4、static成员4、1static修饰成员变量4、2static修饰成员方法 4、3static成员变量初始化5、代码块5、1代码块概念以及分类5、2普通代码块5、3构造代码块5、4静态代码块1、封装的概念面向对......
  • 最新.NET 8 中的 .NET Core 配置使用方法
    在这篇文章中,我将探讨.NET中配置的演变、框架如何处理配置,并提供实际示例来帮助你在应用程序中实现这些概念。什么是配置?.NET中的配置是指控制应用程序行为的设置。这些设置可以包括重试时间、队列长度、功能标志和机密(如连接字符串)等值。传统上,配置是在编译时应用的,但现......