ouvinte de evento reactjs antes da carga adicionada, mas não removida

Eu tenho um componente de reação como:

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

Aqui a lista de eventos é adicionada ao componente. Quando atualizo a página, aparece uma janela pedindo para sair da página.

Mas quando vou para outra página e a atualizo novamente, aparece o mesmo pop-up.

Estou removendo oeventListener do componente emcomponentWillUnmount. Então por que não está sendo removido?

Como posso remover obeforeunload evento em outras páginas?

questionAnswers(2)

yourAnswerToTheQuestion