Патч до навигации пользователя - PullRequest
0 голосов
/ 03 марта 2020

Есть ли способ вызвать вызов PATCH, когда пользователь переходит к другому компоненту без кнопки сохранения?

Сейчас у меня есть представление электронной таблицы, которое я хотел бы сохранить, когда пользователь покидает стр.

Ответы [ 2 ]

0 голосов
/ 04 марта 2020

Если вы хотите предотвратить выход пользователя (если он не сохранит данные), вы можете использовать встроенный маршрутизатор CanDeactivate guard. Он основан на навигации по маршрутизатору.

Он не будет охватывать случаи, когда пользователь собирается покинуть вкладку или закрыть браузер, в этом случае реализация logi c, который прослушивает событие window:beforeunload, хорошее решение.

Комбинация из них должна подойти для всех крайних случаев.


Я рекомендую прочитать этот блог, который подводит итог topi c приятно

Как предотвратить потерю данных пользователем в Angular

0 голосов
/ 04 марта 2020

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

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

Должно работать что-то вроде следующего.

@HostListener('window:beforeunload')
public saveOnExit() {
    ..call save method
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...