今天做了个input搜索

<input class="input_style" type="text" @input="searchInput" v-model.trim="searchValue" :placeholder="placeholder" />

这里想的是直接用lodash 的防抖函数_.debounce,在输入的时候直接用input事件调搜索接口,这种操作,防抖是必备的。
于是乎就打开lodash 文档一顿操作,写出了下面的代码,发现根本不执行,输入后延迟一秒也没见打印。
在里面无论打印什么东西都不会输出。
lodash _.debounce防抖不生效
继续查文档,发现vue官方文档有写到这个库的使用,就照着用了,这会防抖功能正常了。
vue中使用lodash _.debounce防抖不生效原因
Vue相关文档

应该这么写:

searchInput: _.debounce(function() {
	console.log("99999999");
}, 1000),

这里注意,不要在debounce里写箭头函数,否则this的指向就是undefined,而不是Vue实例对象了。

Logo

前往低代码交流专区

更多推荐