0
用例Javascript關鍵事件 - 只有在重複關鍵事件時纔會發生?
- 我有(如在FB信使)的個人或團體的列表(左側窗格)
- 。當切換人,我加載消息(API調用)。
- 如果我快速按下箭頭,那麼不是爲每個人進行API調用,而只想加載我暫停和等待的人。
目前我正在剔除300ms來實現這一目標。
handleSwitchKeyEvent: function() { if (this.pendingLoad) { // Still pending continue to debounce clearTimeout(this.pendingLoad); fn = this.loadContent; } else { // No longer pending - So load data immediately this.loadContent(); } // Delay the load this.pendingLoad = setTimeout(function() { clearTimeout(this.pendingLoad); this.pendingLoad = 0; fn && fn.call(this); }, 300); }
問題
- 當我在消息1 - M1細節加載
- 當我按下鍵快 - M2將加載,然後去反彈會發生下一條消息)
我想避免這個M2負載。我不確定是否可以在同一個流程中混合使用debouce和非debounce
你能僅僅存儲在一個物體或事物的關鍵事件值然後讓debounce代碼首先在debouncing之前檢查該對象的值?就像,它的前一個關鍵值與當前事件值相同,然後消除,否則它不會。 – Pytth