reactjs - 使用 Express + Webpack Dev Middleware + Webpack Hot Middleware 无法重新加载
问题描述
我一直在尝试使用上述设置永远执行热模块更换;失败。这是我的 Webpack 配置
export default {
entry: [
DEVELOPMENT && "webpack-hot-middleware/client",
PATH.SOURCE
].filter(Boolean),
output: {
path: path.join(PATH.ASSETS, "js"),
publicPath: `http://${getenv("WEB_HOST")}:${getenv("WEB_PORT")}/assets/js`,
filename: DEVELOPMENT ? "bundle.js" : "bundle.[hash].min.js"
},
...
plugins: [
...
DEVELOPMENT && new webpack.HotModuleReplacementPlugin()
...
].filter(Boolean),
...这是我app.js
正在运行的快速服务器
const compiler = Webpack(WebpackConfig);
app.use(WebpackDevMiddleware(compiler, {
hot: DEVELOPMENT,
publicPath: WebpackConfig.output.publicPath,
filename: WebpackConfig.output.filename
}));
app.use(WebpackHotMiddleware(compiler));
App/index.jsx
if ( module.hot ) {
import("react-hot-loader").then(({ AppContainer }) => {
module.hot.accept("containers/App", () => {
render(App, AppContainer);
});
});
}
最后,在文件更改时,浏览器的 HMR 更新在开发者控制台上给了我这个。
我一直试图永远解决这个问题,但几乎没有运气。
我在 Webpack 4 上!
解决方案
它似乎与 webpack 或插件无关,您是否尝试过将“0.0.0.0”替换为“localhost”?或者使用这个 chrome 插件——https: //chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi
推荐阅读
- video - 保护浏览器中视频的各种方法是什么?
- node.js - MongoDB大集合大小
- c - count1[g]++ 这个 g 将存储在 count1 的哪个索引中?
- python - 在 PyQt5 中从主窗口打开一个文件到一个新窗口(在不同的文件中)
- validation - Visual Basic 6.0:如何检查文本框的内容是否以特定字符开头?
- html - 表单输入仅显示边框,它们不聚焦也不显示占位符 html&css
- symfony - reusable dynamic sidebar in Symfony 4 (Twig)?
- node.js - 如何使用 SocketsJs 在 nodejs mongodb 和 angularjs 中获取实时数据?
- javascript - how get anchor tag url hash values in jquery?
- javascript - 默认图标未出现在 chrome 扩展中