your you type training react might likely invalid imports have forgot expected component and reactjs react-router react-jsx jsx react-router-redux

reactjs - you - React Router: no se puede leer la propiedad ''ruta'' de undefined



react routing (5)

El error se debe a que la api en React Router v4 es totalmente diferente. Puedes probar esto:

import React from ''react''; import ReactDOM from ''react-dom''; import { BrowserRouter as Router, Route } from ''react-router-dom''; const Main = () => <h1>Hello world</h1>; ReactDOM.render( <Router> <Route path=''/'' component={Main} /> </Router>, document.getElementById(''app'') );

Puede revisar la documentation para saber cómo funciona ahora.

Here tengo un repo con enrutamiento de animación.

Y here puedes encontrar una demo en vivo.

Acabo de empezar a aprender React y me quedé atascado en este error.

No se detectó TypeError: no se puede leer la propiedad ''ruta'' de undefined en el nuevo enrutador

Aquí está mi código:

var React = require(''react''); var ReactDOM = require(''react-dom''); var { Route, Router, IndexRoute } = require(''react-router''); var hashHistory = require(''react-router-redux'') var Main = require(''./components/Main''); ReactDOM.render( <Router history={hashHistory}> <Route path="/" component={Main}> </Route> </Router>, document.getElementById(''app'') );

El tutorial que estaba siguiendo usa React-Router 2.0.0, pero en mi escritorio estoy usando 4.1.1. Intenté buscar cambios pero no tuve éxito en encontrar una solución que funcionara.

"dependencies": { "express": "^4.15.2", "react": "^15.5.4", "react-dom": "^15.5.4", "react-router": "^4.1.1", "react-router-dom": "^4.1.1", "react-router-redux": "^4.0.8"


Recibí el mensaje de error anterior y fue extremadamente críptico. Probé las otras soluciones mencionadas y no funcionó.

Resulta que accidentalmente olvidé incluir el prop to en uno de los componentes <Link /> .

Ojalá el mensaje de error fuera mejor. Un simple required prop "to" not found o algo así habría sido útil. Esperemos que esto salve a alguien que haya encontrado el mismo problema alguna vez.


Solo asegúrese de agregar una to props a <Link> contrario también obtendrá el mismo error.


Tuve el mismo error y lo resolví actualizando el history de 2.xx a 4.xx

npm install history @ latest --save


Tuve una causa diferente, pero el mismo error y encontré esta pregunta por eso. Poner esto aquí en caso de que suceda lo mismo para otros y pueda ayudar. El problema para mí fue que había actualizado para react-router-4 y el acceso a la pathname acceso ha cambiado.

Cambio: (React-Router-3 y anteriores)

this.props.location.pathname

Para: (React-Router-4)

this.props.history.location.pathname