Boa tarde, Estou usando o
browserHistory.push("/cadastro")
em um exercício que estou fazendo, porem esta mudando apenas a URL mas não direciona a pagina.
Meu Button que chama a ação:
<button type="submit" className="btn btn-block btn-submit btn-login" onClick={this.validalogin}>Entrar</button>
o metodo "validalogin"
//login.js
import React, { Component } from 'react';
import { browserHistory } from 'react-router';
import { Link } from 'react-router';
export default class Login extends Component {
validalogin(event){
console.log("valida login")
event.preventDefault ();
browserHistory.push("/cadastro")
}
a ação é chamada pois o console retorna "valida login"
Meu Router:
//index.js
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import 'bootstrap/dist/css/bootstrap.css';
import Cadastro from './componentes/Cadastro';
import { Router, Route, hashHistory } from 'react-router';
ReactDOM.render((
<Router history={hashHistory}>
<Route path="/" component={App}/>
<Route path="/cadastro" component={Cadastro}/>
</Router>
), document.getElementById('root'))
Meu App.js
import React, { Component } from 'react';
import './App.css';
import Footer from './componentes/Footer.js';
import Login from './componentes/Login.js';
class App extends Component {
render() {
return <div className="App">
<Login/>{/*Importando LOGIN*/}
<Footer/>{/*Importando RODAPE*/}
</div>
}
}
export default App;
O interessante é que se eu colocar um
//Login.js
<div>
<Link Link to="/cadastro"> cadastro</Link>
</div>
Ele redireciona a pagina tanto a URL quando a pagina em si, funciona perfeitamente, então acredito que não é problema no Router.
Se alguém puder me dar uma ajudinha '-'.