私はwebpack.config.js
このようなものを持っています:
module.exports = {
entry: [
'webpack-dev-server/client?http://0.0.0.0:8090', // WebpackDevServer host and port
'webpack/hot/only-dev-server', // "only" prevents reload on syntax errors
'./public/js/app.jsx' // Your appʼs entry point
],
debug: true,
output: {
path: __dirname,
filename: filelocation,
publicPath: 'http://localhost:8090/',
hotUpdateChunkFilename: 'hot/[id].[hash].hot-update.js',
hotUpdateMainFilename: 'hot/[hash].hot-update.json'
},
module: {
loaders: [{
// test: /\.jsx?$/,
loaders: ['react-hot','babel?presets[]=es2015,presets[]=react'],
include: [
path.resolve(__dirname, "./public/js"),
],
exclude: [
path.resolve(__dirname, "node_modules"),
]
}],
resolve: {
extensions: ['', '.js', '.jsx']
}
},
plugins: [new webpack.HotModuleReplacementPlugin()]
};
私が実行するwebpack --watch
と、完全に正常に動作します。変更を加えると、ディレクトリの下にhot-update.js
/が生成されます。json
hot
そして、次のような webpack dev サーバーがあります。
new WebpackDevServer(webpack(config), {
publicPath: config.output.publicPath,
hot: true,
}).listen(8090, 'localhost', function (err, result) {
if (err) {
return console.log(err);
}
});
私はwebpack --watch
webpack dev server paralleyを実行しています。変更を加えることができ、webpack が変更をhot
ディレクトリにプッシュしています。しかし、私のブラウザ コンソールでは、webpack 開発サーバーが次のようなエラーをスローしています。
http://localhost:8090/hot/8f052261dd06c76e85cd.hot-update.json 404
[HMR] Cannot find update. Need to do a full reload!
[HMR] (Probably because of restarting the webpack-dev-server)
リロードすると動作します。上記の URL を手動で追加することに注意してください。
http://localhost:8090/hot/8f052261dd06c76e85cd.hot-update.json
アクセス可能です。どこで間違いを犯しているのかわかりません。また、ホットなson/jsファイルをディスクに保存せず、HMRを適用するweb pack-dev-serverにのみ送信する方法はありますか?
Webpack および webpack-dev-server のバージョンが1.7.0