react-router "Não é possível ler a propriedade 'push' de indefinido"

Eu sou bastante novo para reagir e reagir roteador.

Problema com o react é aqui que, em algumas páginas do meu aplicativo, o react-router está funcionando e alguns erros como este: "Não é possível ler a propriedade 'push' de indefinido".

Estou usando o react 0.14.1

Meu código de roteamento fica assim:

render(
<Router history={hashHistory}>
  <Route path="/" component={Loginpanel}/>
  <Route path="Index" component={Index}/>
  <Route path="Form" component={Form} />
  <Route path="Checkindex" component={Index}/>

  <Route path="Signup" component={Signup}/>
  <Route path="Admin" component={Admin}/>
  <Route path="AdminEditDetails" component={AdminEditDetails}/>
  <Route path="AdminDetails" component={AdminDetails}/>


</Router>,
document.getElementById('js-main'));

Meu componente é assim agora:

class  App extends React.Component {

  constructor(props) {
    super(props);
    this.state= {      
      comments: AppStore.getAll();
    };
  }

  componentWillMount() {  
    var length = this.state.comments.length;
    var firstnumber = length - 4;

    if(length == 0){
      console.log("here comes");
      this.props.router.push('/');
    }
    else{
      console.log('work normally');
    }
  }

}

Alguém pode me ajudar com isso? Obrigado.

questionAnswers(5)

yourAnswerToTheQuestion