Угловая 5 фильтровальная труба - PullRequest
0 голосов
/ 11 ноября 2018

У меня вопрос по поводу фильтра трубы угловой 5. Труба фильтра работает нормально, но у меня есть задача отфильтровать формат даты.

import { Pipe, PipeTransform } from "@angular/core";

@Pipe({
  name: "filter"
})
export class FilterPipe implements PipeTransform {
  transform(items: any[], searchText: string): any[] {
    if (!items) return [];
    if (!searchText) return items;
    searchText = searchText.toLowerCase();

    return items.filter(it => {
      return it.data.DatumRodjenja.toLowerCase().includes(searchText);
    });
  }
}

Это мой формат даты: 01.01.1992. как игнорировать точки (.) и искать только набирая цифры. Мой код работает, но мне нужно набирать точки, когда я что-то ищу.

1 Ответ

0 голосов
/ 11 ноября 2018

вы можете использовать replace и /\./g регулярное выражение, которые заполняют поиск всех точек и заменяют его на ''

import { Pipe, PipeTransform } from "@angular/core";

@Pipe({
  name: "filter"
})
export class FilterPipe implements PipeTransform {
  transform(items: any[], searchText: string): any[] {
    if (!items) return [];
    if (!searchText) return items;
    searchText = searchText.toLowerCase();

    return items.filter(it => {
      return it.data.DatumRodjenja.toLowerCase().replace(/\./g,' ').includes(searchText);
    });
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...