Webpack 后端和前端热重载
Webpack backend and frontend hot reloading
我正在尝试使用 Webpack 实时重新加载我的客户端和服务器端代码。当我 运行 webpack-dev-server
命令时,我现在拥有的配置将自动重建文件。但是浏览器没有任何更新,即使我手动刷新它,屏幕上的内容也是一样
var webpack = require('webpack');
var path = require('path');
var fs = require('fs');
var nodeModules = {};
fs.readdirSync('node_modules')
.filter(function(x) {
return ['.bin'].indexOf(x) === -1;
})
.forEach(function(mod) {
nodeModules[mod] = 'commonjs ' + mod;
});
module.exports = {
entry: [ './server/server.js', './client/app.js'],
target: 'node',
output: {
path: path.join(__dirname, 'build'),
filename: '[name].js'
},
module: {
loaders: [{
exclude: /node_modules/,
loader: 'babel'
}]
},
resolve: {
extensions: ['', '.js', '.jsx']
},
externals: nodeModules,
devServer: {
historyApiFallback: true,
contentBase: './'
}
};
在您的环境中嵌入了一个运行时 API,您必须与之交互的 HMR。至少,您需要在入口点脚本的某处添加以下内容:
if (module.hot) {
module.hot.accept()
}
查看新文档中提供的code sample以获得更好的想法。
我正在尝试使用 Webpack 实时重新加载我的客户端和服务器端代码。当我 运行 webpack-dev-server
命令时,我现在拥有的配置将自动重建文件。但是浏览器没有任何更新,即使我手动刷新它,屏幕上的内容也是一样
var webpack = require('webpack');
var path = require('path');
var fs = require('fs');
var nodeModules = {};
fs.readdirSync('node_modules')
.filter(function(x) {
return ['.bin'].indexOf(x) === -1;
})
.forEach(function(mod) {
nodeModules[mod] = 'commonjs ' + mod;
});
module.exports = {
entry: [ './server/server.js', './client/app.js'],
target: 'node',
output: {
path: path.join(__dirname, 'build'),
filename: '[name].js'
},
module: {
loaders: [{
exclude: /node_modules/,
loader: 'babel'
}]
},
resolve: {
extensions: ['', '.js', '.jsx']
},
externals: nodeModules,
devServer: {
historyApiFallback: true,
contentBase: './'
}
};
在您的环境中嵌入了一个运行时 API,您必须与之交互的 HMR。至少,您需要在入口点脚本的某处添加以下内容:
if (module.hot) {
module.hot.accept()
}
查看新文档中提供的code sample以获得更好的想法。