场景:滚动屏幕(onScroll) 缩放屏幕(resize)
如果需要统计用户滚动屏幕或缩放屏幕的行为作出相应的网页反应,容易导致网络的阻塞。
mounted(){
window.addEventListener('resize',this.throttle(this.coloring,2000))
},
methods:{
coloring(){
let r=Math.floor(Math.random()*255);
let g=Math.floor(Math.random()*255);
let b=Math.floor(Math.random()*255);
document.body.style.background=`rgb(${r},${g},${b})`
},
throttle(func,delay){
let timer;
return function(){
let context=this;
let args=arguments;
if(timer){
return;
}
timer = setTimeout(()=>{
func.apply(context,args)
timer=null;
},delay)
}
}
}