I składnik reakcji, takich jak:reactjs detektor zdarzeń beforeunload dodany, ale nie są usuwane
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
tutaj zdarzenia Lister jest dodawana do podzespołu. Po odświeżeniu strony pojawia się wyskakujące okienko z prośbą o opuszczenie strony.
Ale kiedy przejdę na inną stronę i odświeżę ją ponownie, wyświetli się to samo okno.
Usuwam eventListener
ze składnika na componentWillUnmount
. Dlaczego więc nie jest on usuwany?
Jak usunąć zdarzenie beoreunload
na innych stronach?
działa jak uroku :) – gamer
Zapraszamy :) –
Dzięki! Szukałem dokładnie tego !! – Andres