问题这是原生版函数节流方法:匿名函数(注:returnfunction(){}在methods中不能执行)请问,怎么将其改成vue版呢?由于在滚动和中文搜索框中十分常用,请教贴代码:created(){window.addEventListener('scroll',()=>{this.debounce()(this._log,1000);}},methods:{debounce(fn,idle){letsetTm;console.log('debounce')if(!idle||idle
2 回答
慕森卡
TA贡献1806条经验 获得超8个赞
绑定的方式应该是:window.addEventListener('scroll',this.debounce(this._log,1000));看下fiddle
慕桂英3389331
TA贡献2036条经验 获得超8个赞
varthrottle=(fun,wait=5000)=>{varlast=0;returnfunction(){varargs=arguments;varctx=this;varnow=Date.now();if(now-last>=wait){last=now;returnfun.apply(ctx,args);}console.log(`上一个周期未执行完毕`)}}exportdefault{name:'VueComponent',methods:{scroll:throttle(function(){//...})}}
添加回答
举报
0/150
提交
取消