web-dev-qa-db-fra.com

react-router: run n'est pas une fonction

Un tutoriel Egghead l'enseigne comme ceci:

var React = require('react');
var Router = require('react-router');
var routes = require('./config/routes');

Router.run(routes, function(Root){
  React.render(<Root />, document.getElementById('app'));
});

Pourtant, je reçois cette erreur:

TypeError non intercepté: Router.run n'est pas une fonction

note: j'ai déjà mis à jour react-router vers la version récente.

32
Nick Pineda

Depuis la sortie de React Router v1.0, la méthode run a été supprimée, ces changements de rupture sont documentés dans le guide de mise à niveau. Votre code se traduirait approximativement par ceci:

ReactDOM.render(<Router>{routes}</Router>, document.getElementById('app')) 

https://github.com/rackt/react-router/blob/832c42946c874fe56ffde0066b1088054311cb98/CHANGES.md

42
Eelke