Vue debounce 一个方法?
Vue debounce a method?
我知道 Vue.js 具有内置的输入字段去抖动功能。我创建了一个滑块,它触发了一个不使用输入字段的方法,我想知道我是否可以利用方法内部的去抖功能。
是否有可能在简单地向输入添加去抖动之外使用此功能?还是我需要为此编写自己的功能?
我刚刚试过这样做,但它似乎不起作用:
this.$options.filters.debounce(this.search(), 2000);
对于想知道如何执行此操作的任何人。我通过使用我发现的一个很棒的小片段修复了这个问题:
我的数据中的属性
timer: 0
去抖功能
// clears the timer on a call so there is always x seconds in between calls
clearTimeout(this.timer);
// if the timer resets before it hits 150ms it will not run
this.timer = setTimeout(function(){
this.search()
}.bind(this), 150);
你将 this.search() 执行结果放入 debounce,试试这个:
var bufferSearch = Vue.options.filters.debounce(this.search.bind(this), 150);
bufferSearch();
我知道 Vue.js 具有内置的输入字段去抖动功能。我创建了一个滑块,它触发了一个不使用输入字段的方法,我想知道我是否可以利用方法内部的去抖功能。
是否有可能在简单地向输入添加去抖动之外使用此功能?还是我需要为此编写自己的功能?
我刚刚试过这样做,但它似乎不起作用:
this.$options.filters.debounce(this.search(), 2000);
对于想知道如何执行此操作的任何人。我通过使用我发现的一个很棒的小片段修复了这个问题:
我的数据中的属性
timer: 0
去抖功能
// clears the timer on a call so there is always x seconds in between calls
clearTimeout(this.timer);
// if the timer resets before it hits 150ms it will not run
this.timer = setTimeout(function(){
this.search()
}.bind(this), 150);
你将 this.search() 执行结果放入 debounce,试试这个:
var bufferSearch = Vue.options.filters.debounce(this.search.bind(this), 150);
bufferSearch();