OnChange модель для нескольких элементов - PullRequest
0 голосов
/ 01 мая 2019

Я пытался создать директиву при закрытии вкладки с window:beforeunload это прекрасно работает с @HostListener.

Теперь я хочу проверить, был ли изменен какой-либо элемент (вход / список / массив ...)

Я знаю, что могу использовать onModelChange с (change)

но Я ищу какой-нибудь универсальный способ (я имею в виду не ставить change() для каждого DOM)

Я пробовал onChange спасательный круг, но безуспешно.

Вот пример стекаблица

Моя директива выглядит следующим образом (@input должен быть флагом, если что-то меняется или нет)

import { Directive, HostListener, Input } from '@angular/core';

@Directive({
  selector: '[appPageClose]'
})
export class PageCloseDirective {

  @Input ('hasChanges') hasChanges:boolean;

  constructor(){}

  @HostListener('window:beforeunload', ['$event'])
  confirm($event) {
    if(this.hasChanges) 
       $event.returnValue= "do you want to leave?";
  }

}

У меня вопрос, как создать глобального слушателя изменений.

...