Ho un processo OAuth che fa apparire una finestra, ma quando effettuo il login, il reindirizzamento alla pagina di callback OAuth avviene all'interno del popup piuttosto che della finestra genitore (window.opener
). Questo potrebbe essere un po 'hacky, ma mi piacerebbe un modo per la finestra popup per dire al genitore "siamo autorizzati!"Un modo per Reagire in un popup per comunicare con la finestra principale?
Questo funziona davvero:
OAuthCallback = React.createClass({
displayName: 'OAuthCallback',
render() {
window.opener.console.log('hello parent window');
return (
<div>
Hi, OAuth is process is done.
</div>
)
}
});
ma mi chiedo se c'è qualche modo per avere la finestra pop-up dire la finestra padre per chiamare una funzione prop, per esempio this.props.oauthSucceeded()
.
Questo è al di là dei sistemi di eventi, tuttavia, sto parlando di una finestra popup che accede ai componenti di una finestra genitore, che si trovano in un insieme di stati completamente diversi. – ffxsam
E 'ancora possibile comunicare così impostare i listener di eventi in una finestra, modificare la mia risposta. – Eelke
Questa risposta è stata davvero utile, grazie! – ffxsam