React setState solo puede actualizar un componente montado o montado

Recibo la siguiente advertencia

"Advertencia: setState (...): solo puede actualizar un componente montado o montado. Esto generalmente significa que llamó a setState () en un componente desmontado. Esto es un no-op. Compruebe el código del componente ContactPage"

Cuando inicialmente voy a la página de contacto, la primera vez está bien. Luego, si salgo de la página y vuelvo, aparece la advertencia.

Componente de página de contacto:

import React, { Component, PropTypes } from 'react';
import AppStore from '../../stores/AppStore';
import AppActions from '../../actions/AppActions';
import DataContent from './DataContent';

const title = 'Contact Us';


class ContactPage extends Component {

    constructor(props) {
        super(props);
        this.state = AppStore.getState();
        AppActions.getData();
    }

  static contextTypes = {
    onSetTitle: PropTypes.func.isRequired,
  };

  componentWillMount() {
    this.context.onSetTitle(title);
    AppStore.listen(this.onChange.bind(this));
}

componentWillUnmount() {
    AppStore.unlisten(this.onChange.bind(this));
}

onChange(state) {
    this.setState(state);
}

renderData() {
    return this.state.data.map((data) => {
        return (
            <DataContent key={data.id} data={data} />
        )
    })
}

  render() {
    return (
      <div className={s.root}>
        <div className={s.container}>
          <h1>{title}</h1>
          <div>
              { this.renderData() }
          </div>
        </div>
      </div>
    );
}

}

export default ContactPage;

Cuando pongo depuradores, al cargar la página de contacto, llega a componentWillMount (). Cuando salgo de la página de contacto, llega a componentWillUnmount (). Cuando vuelvo a la página, vuelve a presionar componentWillMount () y luego arroja el error cuando presiona la función onChange (estado).

Respuestas a la pregunta(4)

Su respuesta a la pregunta