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

vue3 【实战】封装 “心跳“ 组件

需求描述

在控制台每秒打印一个“hello”

代码实现

<script setup>
import { onMounted, onBeforeUnmount, ref } from "vue";const timer = ref(0);onMounted(() => {function fn() {console.log("hello");timer.value = setTimeout(fn, 1000);}timer.value = setTimeout(fn, 1000);
});onBeforeUnmount(() => {clearTimeout(timer.value);
});
</script><template><div>心跳</div>
</template>

技术要点

  • 卸载组件时,一定要记得清除定时器、自定义事件、DOM事件,避免内存泄漏/其他业务干扰
  • 本例中使用 setTimeout 递归比 setInterval 更好,因为若页面出现卡顿,setInterval 也会中断
http://www.lryc.cn/news/367261.html

相关文章:

  • k8s网络问题以及容器跨宿主机通信原理
  • BM25算法以及变种算法简介
  • D455相机RGB与深度图像对齐,缓解相机无效区域的问题
  • 2024 cicsn ezbuf
  • 地面站Mission planner
  • 常见的api: BigInteger
  • Overall timing accuracy 和Edge placement accuracy 理解
  • 2024 vite 静态 scp2 自动化部署
  • 【数据结构】AVLTree实现详解
  • 深度学习——TensorBoard的使用
  • 【设计模式】观察者模式(行为型)⭐⭐⭐
  • 轻松搞定阿里云域名DNS解析
  • GAT1399协议分析(10)--单图像删除
  • Hudi CLI 安装配置总结
  • 实验八、地址解析协议《计算机网络》
  • Linux系统管理磁盘管理003
  • MLC工具是否适用AMD和ARM场景?如何测试内存性能?
  • NodeJs实现脚本:将xlxs文件输出到json文件中
  • 【启程Golang之旅】网络编程与反射
  • nginx location正则表达式+案例解析
  • 【YOLO系列】YOLOv10论文超详细解读(翻译 +学习笔记)
  • 植物大战僵尸杂交版2024潜艇伟伟迷
  • 白话解读网络爬虫
  • 支持向量机(SVM): 从理论到实践的指南(1)
  • 万字长文|OpenAI模型规范(全文)
  • 微服务架构-正向治理与治理效果
  • normalizing flows vs 直方图规定化
  • vite打包优化常用的技巧及思路
  • k8s学习--kubernetes服务自动伸缩之水平收缩(pod副本收缩)HPA详细解释与案例应用
  • 台式机ubuntu22.04安装nvidia驱动