как сделать доступным для поиска в верхнем и нижнем регистре angular - PullRequest
1 голос
/ 04 августа 2020

У меня есть панель поиска в моем проекте angular, и я пытаюсь сделать так, чтобы панель поиска позволяла одновременно использовать как верхний, так и нижний регистр, но не совсем уверен, как это сделать, я буду очень признателен, если я может получить любое предложение или помощь.

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

Я хочу, чтобы панель поиска позволяла использовать как Pascal Case, так и Camel Case . например, пользователь может ввести

«Нью-Йорк» «Нью-Йорк» «Нью-Йорк» «Новый Йорк» и вернуть тот же результат.

HTML

 <input class="input" matInput name="query" [formControl]="query" placeholder="Filter Workspace">

ТС

query: FormControl = new FormControl();
searchText: string;


  ngOnInit(): void {

    this.query.valueChanges
      .pipe(takeUntil(this.death$))
      .subscribe((value: string) => {
        this.search(value);
      });

  }

  search(searchText: string){
    // reset
    if (!searchText || searchText.length == 0) {
      this.charts = this.workspace.charts;
    }
    // search
    else {
      this.charts = this.charts.filter(chart => chart.name.toLocaleUpperCase().indexOf(searchText) >= 0);
    }

  }

1 Ответ

1 голос
/ 04 августа 2020

Преобразовать и searchText, и chart.name в нижний регистр, например:

searchText = searchText.toLowerCase();
chart.name..toLowerCase().indexOf(*//your searching code//*);

Таким образом, и верхний, и нижний регистр доступны для поиска вместе.

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