vue中清除定时器

vue中清除定时器欢迎访问我的博客 https qww com 祝码农同胞们早日走上人生巅峰 迎娶白富美 文章目录 1 前言 2 方式一 3 方式二 4 缓存 5 参考文档 1 前言最近看 vue js 实战 这本书 看到清除定时器在 beforeDestro 钩子函数中进行 但是按照经验 我记得 destroyed 中也是可以的 于是自己建了一个 vue cli 工程去研究清除定时器的一些方法 2 方式一 ex

欢迎访问我的博客https://qww.com/,祝码农同胞们早日走上人生巅峰,迎娶白富美~~~

1 前言

最近看《vue.js实战》这本书,看到清除定时器在beforeDestroy钩子函数中进行,但是按照经验,我记得destroyed中也是可以的,于是自己建了一个vue-cli工程去研究清除定时器的一些方法

2 方式一

export default { 
    data() { 
    return { 
    timer: null } }, created() { 
    this.getBanner() console.log('created') }, mounted() { 
    console.log('mounted') this.timer = setInterval(() => { 
    console.log('1') }, 500); }, updated() { 
    console.log('updated') }, beforeDestroy() { 
    console.log('beforeDestroy' + '==========' + this.timer) // clearInterval(this.timer) }, destroyed() { 
    console.log('destroyed' + '=========' + this.timer) clearInterval(this.timer) } } 

在页面挂在的时候设置了一个定时器,首先看看钩子函数的场景,createdmounted在页面渲染的时候就都会执行出来,具体看控制台打印,当数据更新,执行updated,然后我做了个路由跳转,将该页面跳转到另外一个页面,此时控制台打印beforeDestroy==========54destroyed=========54,可见当页面跳转完成,这两个钩子函数都会执行,所以我在这两个地方分别尝试去清除定时器,都是可以的

3 方式二

去网上找到一种方法,利用$once监听

const timer = setInterval(() =>{ 
    // 某些定时器操作  }, 500); // 通过$once来监听定时器,在beforeDestroy钩子可以被清除。 this.$once('hook:beforeDestroy', () => { 
    clearInterval(timer); }) 

看了很多文档,都推荐方式二,但始终没搞明白为什么方式二就好

4 缓存

然后尝试使用keep-alive对组件进行缓存,发现并不能销毁,这是destroyed是不执行的,若要清除定时器只能在beforeDestroy

5 参考文档

  • Vue组件中的定时器销毁问题
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210887.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午11:40
下一篇 2026年3月18日 下午11:41


相关推荐

  • spring data jpa方法命名规则

    spring data jpa方法命名规则关键字 方法命名 sqlwhere 字句 And findByNameAn wherename andpwd Or findByNameOr wherename orsex Is Equals findById findByIdEqua whereid Between fi

    2026年3月17日
    2
  • SIFT算法详解

    SIFT算法详解尺度不变特征变换匹配算法详解 Scale nbsp Invariant nbsp Feature nbsp Transform SIFT Just nbsp For nbsp Funzdd nbsp 对于初学者 从 David nbsp G Lowe 的论文到实现 有许多鸿沟 本文帮你跨越 1 SIFT 综述尺度不变特征转换 Scale invariant nbsp feature nbsp transform 或 SIFT

    2026年3月26日
    1
  • 手把手教你制作一个简单的聊天机器人(图灵api)「建议收藏」

    手把手教你制作一个简单的聊天机器人(图灵api)「建议收藏」前言:在无聊的时候打打游戏、听听歌还不如来找个人来陪你聊天,今天来教大家制作一个聊天机器人,这样就不会无聊了,在线聊天机器人地址借愁哥哥机器人(可能有点丑,大家将就一下(????))这个接口就目前的一天100次聊天机会,大家要珍惜哦,源码在文章末尾哦!效果图:目录:一.准备工作二.项目开始1.页面布局:2.样式层:3.逻辑实现:一.准备工作通过分析我们需要以下的具体准备:对于界面的分析,我们需要用到的插件:jQuery,我们采用的是flex弹性布局,既然使用的是图灵机器人

    2022年7月18日
    26
  • 增强学习/强化学习 综述

    增强学习/强化学习 综述创建于 20210512 修改于 20210512 文章目录 1 增强学习概念 2 1 增强学习定义 2 2 两大特点 2 简书 阿阿阿阿毛 https www jianshu com u a18653721b40 3 知乎 叶强 https www zhihu com people iang00 posts page 2 4 CSDN 夏栀的博客 https blog csdn net 36426650 category 9759833 html 5 博客园 刘建平 Pin

    2026年3月16日
    3
  • 2 拉普拉斯分布

    2 拉普拉斯分布2 拉普拉斯分布一元拉普拉斯分布的密度函数为 p x 12 exp x p x frac 1 2 sigma exp frac x mu sigma p x 2 1 exp x 从函数图像看 拉普拉斯密度函数是个尖峰曲线 关于 mu 对称 在 mu 处函数值最大 远离中心点 mu 函数值快速下降 下降速度是指数 mu 称为位置参数 sigma 称为尺度参数 拉普拉斯分布的期望为 mu 方差为 2 2

    2026年3月16日
    1
  • label标签的用法「建议收藏」

    label标签的用法「建议收藏」label标签for属性

    2022年8月2日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号