【发布时间】:2018-01-18 01:51:04
【问题描述】:
所以我一直在尝试为 React 配置热重载,我将 webpack2 与 express 和 webpack-hot-middleware 用于 HMR。
我使用适用于 Linux 的 Windows 子系统从 ubuntu 运行服务器,并在 Windows 上使用普通的 Chrome 作为客户端。
它在我的 mac 上运行得很好,但在 Windows 上却不行,我尝试将浏览器连接到“localhost”和“127.0.0.1”,还明确将 express 上的主机名设置为“localhost”、“127.0”。 0.1' 和 '0.0.0.0' 但它们都不起作用。
Webpack 甚至不会在文件更改时重建。
这是我的 webpack.config.js
const path = require('path');
const webpack = require('webpack');
module.exports = {
entry: [
path.resolve(__dirname, './src/index.jsx'),
'webpack-hot-middleware/client'
],
devtool: 'inline-source-map',
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoEmitOnErrorsPlugin()
],
output: {
path: path.resolve(__dirname, './dist'),
filename: 'app.bundle.js',
publicPath: '/'
},
module: {
rules: [
{
test: /\.(js|jsx)$/,
exclude: [/node_modules/],
use: [{
loader: 'babel-loader',
options: {
presets: ['react', 'env']
}
}]
}
]
}
}
中间件配置
app.use(webpackDevMiddleware(compiler, {
publicPath: config.output.publicPath
}));
app.use(webpackHotMiddleware(compiler));
app.listen(port, () => {
console.log('Listening on port ', port);
});
【问题讨论】:
-
控制台中没有错误日志吗?
-
不,没有错误日志,只有“hmr connected”消息,但这是唯一的日志
标签: reactjs ubuntu express webpack windows-10