2015-05-28 22 views
5

Herezje mój config:WebPACK tryb hot serwer dev nie działa

devServer: { 
    contentBase: '/web/dist/', 
    hot: true, 
    stats: {colors: true}, 
    inline: true 
} 

A oto łyk zadanie im prowadzenie:

gulp.task('build', ['clean', 'styles', 'bower', 'media', 'data', 'homepage'], function(done) { 
    es6promise.polyfill(); 

    console.log('STARTING DEV SERVER...'); 

    server = new WebpackDevServer(webpack(webpackDevConfig), webpackDevConfig.devServer); 
    server.listen(8080, '0.0.0.0', function (err, stats) { 
     if (err) { 
      throw new gutil.PluginError("webpack-dev-server", err); 
     } 

     console.log('DEV SERVER STARTED'); 

     done(); 
    }); 
}); 

Wszystko działa zgodnie z oczekiwaniami, z wyjątkiem gorącego załadunku (brak odświeżania lub zmienić, gdy Wprowadzam zmiany do plików). Co ja tu robię źle?

Odpowiedz

6

Trzeba dodać <script src="http://localhost:8080/webpack-dev-server.js"></script> do index.html To nie jest dodawany podczas korzystania z API

„Zauważ, że konfiguracja WebPack nie jest przekazywana do WebpackDevServer API, więc opcja devServer w konfiguracji WebPACK nie jest stosowany w tym Nie ma też trybu inline dla interfejsu API WebpackDevServer, dlatego należy ręcznie wstawić do strony HTML kod "<script src="http://localhost:8080/webpack-dev-server.js"></script>". (http://webpack.github.io/docs/webpack-dev-server.html)

może trzeba także dodać 'webpack/hot/dev-server' jako punkt_wejścia do WebPACK config

+0

jestem widząc to w konsoli: [WDS] Włączono Hot Module Replacement. framework.bundle.js: 114 Błąd niezamierzony: [HMR] Wymiana modułu Hot jest wyłączona. – Evan

+3

hmm czy masz 'wtyczki: [nowy pakiet webpack.HotModuleReplacementPlugin()]' dodane w konfiguracji twojego komputera? – errnesto

+0

OK, które wydawały się pomóc, ale teraz nie aktualizuje się po zmianie plików. [WDS] Włączono moduł Hot Module Replacement. framework.bundle.js: 600 [HMR] Oczekiwanie na sygnał aktualizacji z WDS ... zmienić pliki i nic się nie dzieje – Evan

1

należy ustawić

webpackConfig.plugins.push(new webpack.HotModuleReplacementPlugin()); 

w webpackConfig także

0

Jeśli używasz redux może to wypróbować.

Z jakiegoś przypadkowego powodu redux-devtools nie pozwalał mi na przeładowanie. Spróbuj usunąć go ze składnika root i konfigurację redux compose.

Uwaga: Należy używać Redux rozszerzenie przeglądarki devtool z tej konfiguracji w konfiguracji Store: window.devToolsExtension ? window.devToolsExtension() : f => f

Ponadto, należy przeczytać: https://medium.com/@rajaraodv/webpacks-hmr-react-hot-loader-the-missing-manual-232336dc0d96#.ejpsmve8f

Albo spróbować gorącej reload 3: przykład: https://github.com/gaearon/redux-devtools/commit/64f58b7010a1b2a71ad16716eb37ac1031f93915

Powiązane problemy