Объединение результатов двух запросов на основе данных, введенных в двух полях поиска - PullRequest
0 голосов
/ 17 мая 2019

Я создаю форму поиска в угловом формате, которая будет автоматически заполнять результаты по имени или по городу.

Я могу получить результат для одного поля ввода. Я не могу объединить результаты поиска по названию и городу в один.

 this.SearchResult = this.nameField.pipe(
      debounceTime(300),
      filter(data => data.length > 3),
      distinctUntilChanged(),
      filter(v => !!v),
      switchMap((name) => {
        return this.http.get<any>(
          environment.api_services.search.url + `/api/name/andy`).pipe(
          map(res => res.data)
        );
      })
    );

1 Ответ

0 голосов
/ 17 мая 2019

Использование forkJoin:

this.SearchResult = this.nameField.pipe(
      debounceTime(300),
      filter(data => data.length > 3),
      distinctUntilChanged(),
      filter(v => !!v),
      switchMap((name) => forkJoin(this.http.get<any>(
          environment.api_services.search.url + `/api/name/andy`).pipe(
          map(res => res.data)
        ), this.http.get<any>(
          environment.api_services.search.url + `/api/city/andy`).pipe(
          map(res => res.data)
        )){

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