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.