Угловой 6 фильтр JSON - PullRequest
       8

Угловой 6 фильтр JSON

0 голосов
/ 09 июня 2018

Привет, у меня проблемы с фильтрацией JSON.Мой console.log в моем компоненте ничего не показывает.Я думаю, что будет отображаться [2]

JSON-файл

[1,2,3,4,5]

Сервис

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { map, filter } from 'rxjs/operators';

@Injectable({
  providedIn: 'root',
})
export class SearchFlService {
  constructor(private http: HttpClient) {}

  getLabels = (searchValue: string) => {
    const fl = searchValue.substring(0, 3).toUpperCase();

    return this.http.get('/assets/data/fl/' + fl + '.json')
      .pipe(
        filter((items) => items === 2),
        map(
          response => {
            return response;
          },
          error => error)
      );
  }
}

компонент

this._searchFlService.getLabels(data.value.searchPlant)
        .subscribe(items => {
          console.log(items);
        });

1 Ответ

0 голосов
/ 09 июня 2018

Вы фильтруете наблюдаемый поток, а не массив элементов.

    return this.http.get('/assets/data/fl/' + fl + '.json').pipe(
      map(items => {
        return items.filter(items => items === 2);
      }, error => error)
    );

* Выше предполагается, что запрос get возвращает массив [].

...