Как выполнить запрос к серверу при перезагрузке страницы? - PullRequest
0 голосов
/ 03 июня 2019

Я не хочу сохранять пользовательские данные на странице выхода / перезагрузки:

@HostListener('window:beforeunload', ['$event']) async unloadHandler() {
    await this.api.saveUserSettings(this.userSetting);
}

Это когда-нибудь работа, а иногда нет. В сети Chrome я вижу, что запрос всегда отменяется.

1 Ответ

0 голосов
/ 03 июня 2019

Потому что вы не можете помешать пользователю покинуть страницу с неблокирующим действием.

Вместо этого следует сохранить настройки в локальном хранилище

@HostListener('window:beforeunload', ['$event']) async unloadHandler() {
  localStorage.setItem('settings', this.userSetting);
}

и использовать resolver или инициализатор приложения длясделайте запрос после перезагрузки страницы .

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