debounceTime用來降低事件的觸發頻率 ,接收以毫秒為單位的參數
它所做的操作是,在一定時間范圍內不管產生了多少事件,它只放第一個過去,剩下的都將舍棄
html:
js代碼:
getSuggestList 是一個發送 ajax 請求的方法,返回 promise,我們使用 from 來將其轉化為 Observable。
為了優化請求,首先 e.target.value 是空字符串時不應該發送請求,
然后可以使用 debounceTime 減少觸發頻率,也可以使用 distinctUntilChanged 操作符來表示只有與上次不同時才去發送請求。
我們還可以在 API 失敗時重試 3 次。