相关疑难解决方法(0)

如何在Vue2中实现去抖?

我在Vue模板中有一个简单的输入框,我想或多或少地使用debounce:

<input type="text" v-model="filterKey" debounce="500">
Run Code Online (Sandbox Code Playgroud)

但是,该debounce物业已在Vue 2中弃用.该建议仅说:"使用v-on:输入+第三方去抖功能".

你是如何正确实现它的?

我试图使用lodash,v-on:inputv-model来实现它,但我想知道是否可以不使用额外的变量.

在模板中:

<input type="text" v-on:input="debounceInput" v-model="searchInput">
Run Code Online (Sandbox Code Playgroud)

在脚本中:

data: function () {
  return {
    searchInput: '',
    filterKey: ''
  }
},

methods: {
  debounceInput: _.debounce(function () {
    this.filterKey = this.searchInput;
  }, 500)
}
Run Code Online (Sandbox Code Playgroud)

然后在computed道具中使用filterkey .

debouncing vue.js vuejs2

106
推荐指数
7
解决办法
7万
查看次数

标签 统计

debouncing ×1

vue.js ×1

vuejs2 ×1