Если вы хотите только поймать пользователя, покидающего страницу для другой страницы в вашем приложении, ловушка жизненного цикла OnDestroy - это путь к go. Имейте в виду, что это не поймает случаи, когда пользователь покидает ваш сайт или закрывает браузер.
Если вы хотите поймать их, вам нужно будет использовать браузер перед загрузкой обработчика. Для полного охвата вы должны использовать оба.
Должно работать что-то вроде следующего.
@HostListener('window:beforeunload')
public saveOnExit() {
..call save method
}