как показать подтверждение при сортировке в мат-угловом материале - PullRequest
1 голос
/ 02 октября 2019

Я использую угловой 8 с угловым материалом 8, я хочу показать подтверждение при сортировке на мат-таблице. если пользователь подтвердит истину, значок изменится, а при подтверждении ложного ложный значок не изменится. как я могу это сделать?? пожалуйста, помогите решить эту проблему стек-блиц-ссылка

1 Ответ

3 голосов
/ 02 октября 2019

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

Если это так, у вас есть два варианта:

  • Создайте пользовательскую директиву для обработки сортировки «вручную»;
  • Сохраните событие сортировки last для возможной операции «отката», если пользователь отменит ее.

Вот пример для 2-го. подход:

@Component({
  // ...
})
export class TableSortingExample {
  @ViewChild(MatSort, { static: true }) sort: MatSort;
  lastSort: Partial<Sort> = {};

  sortChangeHandler(evt: Sort): void {
    if (confirm('Confirm question?')) {
      this.lastSort = {
        active: this.sort.active,
        direction: this.sort.direction
      };
      // Perform sort operation
    } else {
      this.sort.active = this.lastSort.active;
      this.sort.direction = this.lastSort.direction;
    }
  }
}

ПОЛНОЕ ДЕМО

...