установить debounce в ионной поисковой панели с не работающей угловой - PullRequest
0 голосов
/ 31 мая 2019

Я пытаюсь позволить пользователям выполнять поиск в базе данных, чтобы получать результаты путем поиска в текстовом поле, и я не хочу, чтобы API вызывался всякий раз, когда в текстовое поле вставляется переменная, но жду 3 секунды, прежде чемвызов сделан в API.Я использую debounce, но он не работает

<ion-searchbar
[(ngModel)]="userSearch"
          [debounce]="4000"
           (ionInput)="liveSearch($event)"
           placeholder="Search for Politics, Entertainment, Sports..."
></ion-searchbar>

JS

import { Component } from '@angular/core';
import { NewsService } from '../services/news-service.service';

@Component({
  selector: 'app-tab3',
  templateUrl: 'tab3.page.html',
  styleUrls: ['tab3.page.scss']
})
export class Tab3Page {

  userSearch: any;
  searchResults: any= [];

  constructor(private newsService: NewsService) {}

  liveSearch() {
    this.newsService.searchNews(this.userSearch).subscribe(data => {
      this.searchResults = data;
      console.log(data);
    });
  }

}

1 Ответ

2 голосов
/ 31 мая 2019

Вы должны изменить (ionInput)="liveSearch($event)" на (ionChange)="liveSearch($event)", так как свойство debounce изменяет только поведение ionChange.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...