Javascript 取消公告的函数调用延迟,但在等待计时器结束时全部执行
我使用以实现“键入时搜索”字段 我正在阅读,从我的理解来看,函数只能被调用有限的次数 在我的例子中,函数调用被延迟,但在等待计时器结束后立即执行:Javascript 取消公告的函数调用延迟,但在等待计时器结束时全部执行,javascript,vue.js,debouncing,Javascript,Vue.js,Debouncing,我使用以实现“键入时搜索”字段 我正在阅读,从我的理解来看,函数只能被调用有限的次数 在我的例子中,函数调用被延迟,但在等待计时器结束后立即执行: methods: { searchOnType: function (currentPage, searchString) { console.log(`Searching ${searchString}`) var debounced = throttle(this.getMovies, 4000, {leading: fals
methods: {
searchOnType: function (currentPage, searchString) {
console.log(`Searching ${searchString}`)
var debounced = throttle(this.getMovies, 4000, {leading: false, trailing: true})
debounced('movies.json', currentPage, searchString)
},
getMovies: function (url, page, query) {
console.log(query)
this.loading = true
resourceService.getMovies(url, page, query).then((result) => {
this.items = result.movies
this.totalMovies = result.total
this.loading = false
})
},
HTML(它是Vue.JS)
这是我的控制台。日志:每次按下
键时,您都在创建一个限制函数(顺便说一下,您可能应该使用输入
)。你可以这样做,我想
methods: {
searchOnType: throttle((currentPage, searchString) => {
this.getMovies('movies.json', currentPage, searchString)
}, 1000, {leading: false, trailing: true})
}
每次按下keydown
(顺便说一句,您可能应该使用input
)时,都会创建一个限制函数。你可以这样做,我想
methods: {
searchOnType: throttle((currentPage, searchString) => {
this.getMovies('movies.json', currentPage, searchString)
}, 1000, {leading: false, trailing: true})
}
是的,你可以,我只是在文件里读到。。谢谢但是你的语法有点错误,你能检查一下文档并纠正一下吗√ ?不过语法很好。这完全取决于你想如何处理它。我将更新我的示例以处理参数。那么,我之前所做的是什么呢?您创建了一系列不同的去公告
函数。是的,您可以,我只是在文档中阅读了它。。谢谢但是你的语法有点错误,你能检查一下文档并纠正一下吗√ ?不过语法很好。这完全取决于你想如何处理它。我将更新我的示例以处理参数。那么,我之前所做的是什么呢?您创建了一系列不同的取消公告的函数。