Как вызвать событие в React после закрытия открытого окна - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть div в React с обработчиком onClick, который при щелчке реализует window.open во всплывающем окне, которое направляет их на внешний URL-адрес.Когда пользователь закрывает всплывающее окно, я хотел бы реализовать вызов API.Однако все, что я пробовал, не удалось, в том числе попытка использовать прослушиватели событий.

Как я могу определить, когда окно закрыто в React?

Текущий код для события окна выглядит следующим образом:

export class App extends Component {

  opener = () => {
    const myWindow = window.open("https://www.espn.com", "MsgWindow", "width=200,height=100");
  }

  render() {  

    return (
      <div onClick={this.opener}>
        Hello World
      </div>
    );
  }
}

1 Ответ

0 голосов
/ 05 декабря 2018

Вы можете изменить функцию opener, как показано ниже:

  opener = () => {
    const myWindow = window.open("https://www.espn.com", "MsgWindow", "width=200,height=100");

    var timer = setInterval(function() { 
        if(myWindow.closed) {
            clearInterval(timer);
            alert('closed');
        }
    }, 1000);
  }

Ссылка | Codepen

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