Реагировать на функцию вызова до закрытия окна / вкладки - PullRequest
0 голосов
/ 28 июня 2019

Я пытаюсь вызвать функцию, когда пользователь закрывает вкладку в окне.Согласно моему исследованию, я нашел следующий способ добиться того же, используя событие окна beforeunlaod :

componentDidMount(){
  window.addEventListener('beforeunload', (ev) => {
    this.props.apiCall(); // calling an api to update some data
 })
}

Кажется, что приведенный выше код не работает как соответствующая функция (apiCall()) не вызывается.

Может кто-нибудь, пожалуйста, помогите мне решить то же самое.

1 Ответ

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

Согласно документам , ваш EventListener должен быть таким,

window.addEventListener('beforeunload', (event) => {
  // Cancel the event as stated by the standard.
  event.preventDefault();
  // Chrome requires returnValue to be set.
  event.returnValue = '';

  this.props.apiCall();
});
...