本文共 455 字,大约阅读时间需要 1 分钟。
在前端进行keyup时间去触发搜索时,由于事件被频繁的触发,因而频繁执行DOM操作、资源加载等重行为,导致UI停顿甚至浏览器崩溃,我们需要给keyup时间做一个延迟执行。
当调用函数n
秒后,才会执行该动作,若在这n
秒内又调用该函数则将取消前一次并重新计算执行时间,举个简单的例子,我们要根据用户输入做搜索,每当用户按下键盘的时候都可以取消前一次,并且只关心最后一次输入的时间就行了。
npm i lodash -S
import debounce from "lodash/debounce";
或者不用a、b两步操作,直接引入js库;
VUE官网给的例子:
//html页面//js代码searchDebounce: debounce(function () { //调用search方法 this.searchFuzzy();}, 500),
转载地址:http://fvtbi.baihongyu.com/