Попробуйте переключить фильтр с 3 значениями входа [Angular [ - PullRequest
0 голосов
/ 03 октября 2019

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

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

my Inputs:

  <button (click)="applyFilter('tax')">tax</button>
  <button (click)="applyFilter('money')">money</button>
  <button (click)="applyFilter('special')">special</button>

my Filter:

  applyFilter(filterValue: string) {
    this.filterBool = !this.filterBool;
    if (this.filterBool) {
      this.dataSource.filter = filterValue.trim().toLowerCase();
    } else {
      this.onGetReportsList(this.dataForFilter);
    }
  }

Какое решение для этого случая?

1 Ответ

1 голос
/ 03 октября 2019
//declare a property with the last entered value
let lastValue = "";
applyFilter(filterValue: string) {

if(this.lastFilter === 'tax'&& filterValue === 'money' )
 {
    this.lastValue = filterValue ;
    filterValue = 'tax';
 }
else()
{
  this.lastValue = filterValue ;
 this.filterBool = !this.filterBool;
}


if (this.filterBool) {
  this.dataSource.filter = filterValue.trim().toLowerCase();
} else {
  this.onGetReportsList(this.dataForFilter);
}

}

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