Я пишу код для предотвращения случайного выхода из моего веб-приложения.Угловой 2, привязка страницы-события
@HostListener('window:beforeunload', ['$event'])
leaving($event) {
this.router.navigateByUrl('/home');
return false;
}
@HostListener('pageshow',['$event'])
safari(e) {
if (e.persisted) {
window.location.reload();
}
}
Первый beforeunload
слушатель работает правильно, предотвращает страницу из осуществляется выход или перезагружается, и обрабатывает крайние случаи, нажав пользователя к дому. Второй pageshow
предназначен для обработки случаев, когда пользователь прошел навигацию, и повторно вводит через кнопки «назад/вперед» на сафари, так как он обрабатывает кеширование и навигацию по-разному в Chrome.
Событие pageshow
никогда не срабатывает вообще, в любом браузере - я делаю что-то не так с привязкой?