reactjs - redireccionar - React-Router-TypeError no capturado: no se puede leer la propiedad ''getCurrentLocation'' de undefined
redireccionar react (2)
Estoy usando la última versión de
react-router
(versión ^ 3.0.0).
Escribí la siguiente ruta usando ES5:
routes.js
:
var React = require("react");
var Router = require("react-router");
var AuthorPage = require(''./components/authors/authorPage'')
var App = require(''./components/app'')
var Route = Router.Route;
var routes = (
<Route path="/" component={App}>
<Route path="authors" component={AuthorPage}/>
</Route>
);
module.exports = routes;
En otro archivo JS llamado
main.js
realizo la siguiente llamada:
main.js
:
var React= require("react");
var ReactDom = require("react-dom");
var Router = require(''react-router'').Router;
var routes = require(''./routes'');
ReactDom.render(<Router routes={routes}></Router>, document.getElementById(''app''));
Cuando ejecuto el código, obtengo la siguiente excepción en las herramientas para desarrolladores de Google Chrome:
TypeError no capturado: no se puede leer la propiedad ''getCurrentLocation'' de undefined
¿Porqué es eso? ¿Qué me estoy perdiendo?
No está pasando un historial a su
<Router>
.
Consulte la documentación del historial para obtener más información.
Tuve el mismo error, lo resolvió de esta manera:
Añadir
var hashHistory = ReactRouter.hashHistory;
Y en el conjunto de enrutadores, la historia es igual a hashHistory
<Router history={hashHistory}>
Entonces en tu caso:
var routes = (
<Router history={hashHistory}>
<Route path="/" component={App}>
<Route path="authors" component={AuthorPage}/>
</Route>
</Router>
);