2016-03-19 3 views
1

Im Verwenden des React Slingshot-Starter-Projekts für meine React/Redux-App. Hot Reload funktioniert gut, wenn ich Routen wie /foo verwende, aber ich habe festgestellt, dass das Warmladen auf Unterrouten wie /foo/bar nicht funktioniert. Ich habe keine Änderungen an der Out-of-the-box webpack Konfigurationsdatei aus, die hier zu finden sind https://github.com/coryhouse/react-slingshot/blob/master/webpack.config.jsReact Slingshot - Webpack Hot Middleware 404 auf Hot-update.json zurücksenden, wenn die Router-Subrouten

I 404 GET http://localhost:3004/orders/c344e97ed1fbc2923017.hot-update.json 404 (Not Found) auf der Create Komponente, wenn ich die folgende Routen Konfiguration haben:

<Route path="/" component={App}> 
    <Route path="login" component={Login} /> 
    <Route path="orders" component={OrderPanel} /> 
    <Route path="orders/create" component={CreateOrder} /> 
    <Route path="*" component={NotFoundPage} /> 
</Route> 

Aber wenn ich den Weg von Aufträgen/erstellen ändern, um nur zu erstellen, wird es wieder keine 404.

es scheint, wie die heiße Update Middleware versucht, die Hot-update.json von der/Bestellungen Route zu holen ?

Antwort

1

Nur für die Vollständigkeit und alle, die dieses Problem mit einer älteren Version von Schleuder haben.

publicPath: '', 

mit

publicPath: '/', 

in webpack.config.js

UPDATE: Dies wurde auch in issue 75 und fixiert here durch Ersetzen erwähnt Von Kommentar reduckted ist die publicPath mit einem Schrägstrich beginnen muss und am Ende . Ersetzen:

publicPath: 'dist/', 

mit

publicPath: '/dist/', 
+0

hatte ein ähnliches Problem. Ich hatte bereits einen öffentlichen Pfad, der mit einem Schrägstrich endete. Ich habe es behoben, indem ich den öffentlichen Pfad _start_ mit einem Schrägstrich versehen habe. Zum Beispiel hatte ich 'publicPath: 'dist /'', musste es aber in 'publicPath: '/ dist /'' ändern. – reduckted

+0

@reduckted Ich habe meine Antwort aktualisiert. Danke, dass du darauf hingewiesen hast. –

0

publicPath Config für mich kein Problem war. Wenn Sie Redux verwenden, können Sie dies versuchen.

Aus irgendeinem Grund redux-devtools war nicht erlaubt, für mich neu laden. Versuchen Sie, es aus der Root-Komponente und redux compose Config zu entfernen.

Hinweis: Verwenden Sie redux DevTool Browser-Erweiterung mit dieser Konfiguration in Ihrem Speicher-Konfiguration: window.devToolsExtension ? window.devToolsExtension() : f => f

Auch lesen muss: https://medium.com/@rajaraodv/webpacks-hmr-react-hot-loader-the-missing-manual-232336dc0d96#.ejpsmve8f

Oder versuchen heiß Reload 3: Beispiel: https://github.com/gaearon/redux-devtools/commit/64f58b7010a1b2a71ad16716eb37ac1031f93915

Verwandte Themen