时间:2021-05-18
vue组件中,this指向实例,【实例中重写了setInterval等一整套方法】。所以,千万不能和 window 下挂载的方法混用
具体不同在于,window.setInterval执行完比后返回一个id,而vue实例中返回【定时器对象】,当然该对象中包含一个_id的私有属性
因为 clearInterval 方法参数是id,所以最佳实践是统一使用 window 的方法,不要使用 vue组件的方法
vue中的定时器方法,要使用箭头函数,不要出现 const that = this 的写法
//正确的用法mounted() { // 如果不加 window ,则会使用 vue实例的方法,将无法清除定时器 this.timer = window.setInterval(() => { this.date = new Date(); }, 2000); console.log(this.timer);//number},methods: { clearTimer() { window.clearInterval(this.timer); this.timer = null; }}补充知识:vue 切换页面 setInterval
vue 是单页面应用,路由切换后,定时器并不会自动关闭,需要手动清除,当页面被销毁时,清除定时器即可。
mounted(){ clearInterval(this.timer); this.setTimer(); }, destroyed(){ clearInterval(this.timer) }以上这篇浅谈vue 组件中的setInterval方法和window的不同就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文介绍了浅谈Vue父子组件和非父子组件传值问题,分享给大家,具体如下:1.如何创建组件1.新建一个组件,如:在goods文件夹下新建goodsList.vue
Document自带的方法:循环执行:vartimeid=window.setInterval(“方法名或方法”,“延时”);window.clearInter
一、定时器概述window对象提供了两个方法来实现定时器的效果,分别是window.setTimeout()和window.setInterval。其中前者可以
Vue中的组件和指令分为局部组件、局部指令和全局组件、全局指令。对于注册有一定数量的全局指令和全局组件时,官方文档中的方法就显得有些不够清爽了。全局组件在Vue
数据驱动和组件化是vue.js两个最重要的特点。组件化是为了方便代码复用,提高开发效率。常见的vue组件写法有四种,各有特色,适用于不同的场景。1、全局组件结构