Z powodzeniem skonfigurowałem pakiet WebPack - kompilacja plików babel i SCSS jest w porządku, a funkcja zegarka działa prawidłowo. Ale chciałbym także pracować z wymianą modułów Hot - i mam problemy z jej uruchomieniem. Kiedy ładuję serwer dev w mojej przeglądarce, pokazuje on Cannot resolve module 'webpack/hot/dev-server'
. Mój config wygląda następująco:Nie można uzyskać wymiany modułu hot pack w sieci Web do pracy
import webpack from 'webpack';
import wpServer from 'webpack-dev-server';
var compiler = webpack({
entry: [
'./src/core.js',
'webpack/hot/dev-server'
],
output: {
path: outPath,
filename: '[name].js'
},
resolveLoader: { root: path.join(MODULE_PATH, "node_modules") },
module: {
loaders: [
{ test: /\.js$/, exclude: /node_modules/, loader: 'babel-loader' },
{ test: /\.scss$/, loader: "style!css!sass" }
]
},
plugins: [new webpack.HotModuleReplacementPlugin()],
watch: true
});
var server = new wpServer(compiler, {
contentBase: outPath,
hot: true,
quiet: false,
noInfo: false,
lazy: true,
filename: "main.js",
watchDelay: 300,
headers: { "X-Custom-Header": "yes" },
stats: { colors: true },
});
server.listen(8080, "localhost", function() {});
i mój index.html zawiera:
<script src="http://localhost:8080/webpack-dev-server.js"></script>
<script src='main.js'></script>
Czy ktoś ma jakieś pomysły?
Nie można łączyć trybu leniwego z programem Hackback-dev-server z HMR. Tryb leniwy rekompiluje się tylko na żądanie HTTP. HMR polega na obserwatorach, którzy rekompilują zmiany. Zamiast tego użyj 'lazy: false' lub po prostu go pomiń. –
Zamieściłem małe wyjaśnienie na temat działania HMR i tego, co jest wymagane, aby to działało: http://stackoverflow.com/questions/37016683/what-aspect-of-hot-module-replacement-is-this-article- for/37022884 # 37022884 –