reactjs Ereignis-Listener beforeunload hinzugefügt, aber nicht entfernt
Ich habe eine Reaktionskomponente wie:
import React, { PropTypes, Component } from 'react'
class MyComponent extends Component {
componentDidMount() {
window.addEventListener("beforeunload", function (event) {
console.log("hellooww")
event.returnValue = "Hellooww"
})
}
componentWillUnmount() {
window.removeEventListener("beforeunload", function (event) {
console.log("hellooww")
event.returnValue = "Hellooww"
})
}
render() {
return (
<div>
Some content
</div>
)
}
}
export default MyComponent
Hier Event Lister wird der Komponente hinzugefügt. Wenn ich die Seite aktualisiere, werde ich aufgefordert, die Seite zu verlassen.
Aber wenn ich zu einer anderen Seite gehe und sie erneut aktualisiere, wird dasselbe Popup angezeigt.
Ich entferne daseventListener
von der Komponente aufcomponentWillUnmount
. Warum wird es dann nicht entfernt?
Wie kann ich das @ entfernebeforeunload
Event auf anderen Seiten?