【发布时间】:2019-01-11 17:31:26
【问题描述】:
我已经尝试使用 Webpack 大约两年了,并且已经将我所有的新开发从 Gulp 切换到了 Webpack。从那时起,我一直犹豫要不要在我的源文件中添加专门用于 HMR 逻辑的代码,但后来发现下面的代码适用于我的所有源文件,实际上我的源入口点末尾只有三行:
if (module.hot) {
module.hot.accept();
}
以上三行运行良好(至少对于我遇到的用例而言),您不必在 accept 调用中指定单个文件。我所有的 JavaScript(据我所知)和 CSS 几乎在没有重新加载的情况下立即在浏览器中被替换,这比在浏览器中实时重新加载并在每个文件保存时丢失整个应用程序状态的安排要好得多。
问题是,react-hot-loader、vue-hot-loader 和 angular-hot-loader 之类的库的目的是什么(在我看来)HMR 似乎只要按照官方网站上https://webpack.js.org/guides/hot-module-replacement 的指南就可以工作?
【问题讨论】:
标签: webpack webpack-hmr