Vue 中使用$.once(‘hook:beforeDestory’,() => {})清理定时器

创建的定时器代码和销毁定时器的代码没有放在一起,通常很容易忘记去清理这个定时器,不容易维护;
因此,使用this.$once(‘hook:beforeDestory’,()=>{});

直接在需要定时器的方法或者生命周期函数中声明并销毁
实现代码:

export default{
  methods:{
    fun1(){
      const timer = setInterval(()=>{
        //具体执行代码
        console.log('1');
      },1000);
      this.$once('hook:beforeDestory',()=>{
        clearInterval(timer);
        timer = null;
      })
    }
  }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容