Saltar al contenido

Cómo emular window.location con react-router y clases ES6

Presta atención ya que en este artículo vas a hallar el hallazgo que buscas.

Solución:

Después de perder el tiempo con el enrutador de reacción, finalmente cambié a javascript básico.

  1. Cree un componente para su redirección:

    Ruta ruta = “*” componente = NotFound

  2. En el componente use window.location para redirigir:

     componentDidMount() 
          if (typeof window !== 'undefined') 
               window.location.href = "http://foo.com/error.php";
          
     
    

Si está utilizando browserHistory para React-router, la vida es más simple.

import browserHistory from "react-router";

functionName() 
 browserHistory.push("/path-to-link");

Encontré una solución aquí: https://github.com/rackt/react-router/issues/975, y aquí: https://github.com/rackt/react-router/issues/1499

Necesario en el constructor:

class SidebarFilter extends React.Component {

    constructor(props, context) {
        super(props, context);

También es necesario agregar un static propiedad:

SidebarFilter.contextTypes = 
  router: React.PropTypes.func.isRequired
;

Entonces podría llamar:

this.context.router.transitionTo(/path-to-link);

Calificaciones y reseñas

Agradecemos que desees añadir valor a nuestra información añadiendo tu veteranía en las reseñas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *