在vue項目中使用 throttle-debounce
插件,需要對按鈕做節流處理(多次點選隻請求一次,且最後一次不執行),然後用了 throttle
,代碼如下:
throttle-debounce
throttle
throttle(3000, true, function() {
//...
})
因為看到throttle使用介紹是這樣的,如下圖:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnLkNTNzkDN4YDM2gTNxI2NiVmNmRDNyQmZ0UWY0QmMwI2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
但是這樣使用noTrailing報錯,
callback.apply is not a function
于是檢視報錯位置:
發現其參數格式不是
throttle(delay, noTrailing, callback, debounceMode)
,而是
throttle(delay, callback, options)
,這個options裡面才包含noTrailing和debounceMode。
于是,修改代碼如下:
throttle(3000, function() {
//...
}, { noTrailing: true })