2016-04-01 8 views
14

Hallo Ich möchte wissen, wie Sie eine Nachricht auf der Browser-Registerkarte schließen. Ich verwende Reactjs.Reactjs Browser Tab Schließen Ereignis

Dies ist, was ich versucht habe, zu meiner reagierenden Komponente hinzuzufügen.

Antwort

19

Sie haben es richtig gemacht abgesehen von dem Ereignisnamen und der Tatsache, dass die Warnung in diesem bestimmten Ereignis blockiert wird.

Sie können Nachricht wie diese zeigen:

window.addEventListener("beforeunload", (ev) => 
{ 
    ev.preventDefault(); 
    return ev.returnValue = 'Are you sure you want to close?'; 
}); 

Hoffnung, das hilft.

+0

Danke..das funktioniert .. Allerdings bin ich nicht in der Lage, den Event-Listener auf componentWillUnmount zu entfernen.ist es das richtige Ereignis. – dhrDatt

+2

Sie können den Handler im lokalen Feld speichern: 'this.handler = (ev) => ...' während der Initialisierung im Konstruktor. Verwenden Sie dann dieses Feld in den Methoden addEventListener ("beforeunload", this.handler) 'und' removeEventListener ("beforeunload", this.handler) entsprechend. – Amid

+0

Funktioniert wie Butter ... Vielen Dank – dhrDatt

Verwandte Themen