第一种
1.html部分
<el-input v-model.trim="sval"></el-input>
2.js部分
const delay = (function () {
let timer = 0
return function (callback, ms) {
clearTimeout(timer)
timer = setTimeout(callback, ms)
}
})()
export default {
data(){
return{
sval:'';
}
},
watch:{
sval(){
delay(() => {
this.search()
}, 1000)
}
},
methods: {
search(){
console.log(123)
},
}
}
第二种
1.html部分
<el-input v-model.trim="sval" @input="search()"></el-input>
2.js部分
let timeout = null
function debounce(fn, wait) {
if(timeout !== null) clearTimeout(timeout)
timeout = setTimeout(fn, wait)
}
export default {
data(){
return{
sval:'';
}
},
methods: {
search(){
debounce(() => {
console.log(this.sval)
}, 1000)
},
}
}