2015-09-20 12 views
29

Ein Egghead Tutorial es so lehrt:reagieren-Router: Lauf ist keine Funktion

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')); 
}); 

Aber ich bekomme diese Fehlermeldung:

Uncaught TypeError: Router.run is not a function

Anmerkung: ich bereits aktualisiert haben react-router zu die neueste Version.

Antwort

38

Seit der Veröffentlichung von React Router v1.0, die run-Methode entfernt wurde, sind diese brechenden Änderungen im Upgrade-Handbuch dokumentiert. Ihr Code übersetzen würde in etwa folgendermaßen aus:

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

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

+0

Course! Neugierig, hält Babel-Loader es irgendwie am Laufen? Ursache Ich habe den Tutorial-React-Router auf die aktuellste Version aktualisiert ([email protected]) und ihr Beispiel funktioniert immer noch mit run. –

+0

vielleicht vergessen, den Watch/Build-Prozess neu zu starten? – Eelke

+4

Upgrade-Info ist jetzt auf der [changelog] (https://github.com/rackt/react-router/blob/832c42946c874fe56ffde0066b1088054311cb98/CHANGES.md) – br3w5