tôi đã thiết lập thành công WebPack - nó biên dịch babel tôi và SCSS tập tin tốt, và tôi đã nhận các chức năng đồng hồ để làm việc tốt. Nhưng tôi cũng muốn làm việc với các mô-đun thay thế nóng - và tôi đang gặp khó khăn để nó đi. Khi tôi tải máy chủ dev trong trình duyệt của tôi, nó hiển thị Cannot resolve module 'webpack/hot/dev-server'
. cấu hình của tôi trông như thế này:Không thể có được webpack nóng mô-đun thay thế để làm việc
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() {});
và index.html của tôi chứa:
<script src="http://localhost:8080/webpack-dev-server.js"></script>
<script src='main.js'></script>
Có ai có bất kỳ ý tưởng?
Bạn không thể kết hợp chế độ lười biếng webpack-dev-server với HMR. Chế độ lười chỉ biên dịch lại khi có yêu cầu HTTP. HMR dựa vào người theo dõi để biên dịch lại sự thay đổi. Sử dụng 'lazy: false' thay vào đó hoặc chỉ bỏ qua nó. –
Tôi đã đăng một giải thích nhỏ về cách thức hoạt động của HMR và những gì cần thiết để làm cho nó hoạt động: http://stackoverflow.com/questions/37016683/what-aspect-of-hot-module-replacement-is-this-article- cho/37022884 # 37022884 –