轮询单独使用setInterval可能导致页面卡死
因为setInterval不会清除定时器队列,每重复执行1次都会导致定时器叠加
但是setTimeout是自带清除定时器的队列。所以可以把二者结合起来使用。
 
  1. setTimeout():延时任务。在指定的毫秒数后调用函数或计算表达式,
  2. setInterval():定时任务。在每隔指定的毫秒数循环调用函数或表达式,直到clearInterval把它清除。
  3. setTimeout()只执行一次,而setInterval可以多次调用。
//轮询 创建定时器
timer = window.setInterval(() => {
		setTimeout(() => {
		   	 getList() //调用接口的方法
		  	console.log(1111111111)
		 }, 0)
	}, 3000);


//结束轮询清除定时器
 window.clearInterval(this.timer)

Logo

前往低代码交流专区

更多推荐