DebounceTime для вызова API и сброса формы Angular 9 - PullRequest
0 голосов
/ 27 мая 2020

Мне нужна кнопка сброса для моего поиска, но также как и debounce. Это то, что у меня есть сейчас. Я считаю, что моя проблема в том, что я теряю 'это' для формы после сброса.

searchForm = new FormControl('');

constructor(private searchService: SearchService){}

ngOnInit(): void {
    this.searchForm.valueChanges.pipe(
  debounceTime(500),
  distinctUntilChanged())
  .subscribe(() => {
    this.getSearch();
  });
}

getSearch(){
    this.searchService.getSearch(this.searchForm.value).subscribe( res => console.log(res);
}

onReset(){
    this.searchForm.reset();
}

Я новичок в Angular, и я уверен, что это ужасно, я ценю помощь .

1 Ответ

0 голосов
/ 27 мая 2020

Измените событие сброса на: -

onReset(){
    this.searchForm.reset(null, {emitEvent: false, onlySelf: true});
}

Это предотвратит выброс этого изменения для вашего valueChanges и не повлияет на время вашего дебаунса или около того.

...