javascript - 如何使 webpack 热模块替换与车把模板一起使用?
问题描述
我正在使用车把加载器:
{
test: /\.hbs$/,
loader: 'handlebars-loader',
}
我也在使用 html-webpack-plugin。
使用 Webpack Dev Server 一切正常:
如果保存了对车把模板或 SCSS 文件的更改,则会自动重新加载页面。
hot: true
但是,一旦我在 下启用devServer
,HMR 就开始为 SCSS 更改工作(即 CSS 在没有完全重新加载的情况下更新),这是我想要的,但是如果我更改车把模板,HMR 不起作用,并且常规的“热重新加载” "(即重新加载整个页面)也停止工作。
有任何想法吗?
如果 HMR 可以用于 SCSS 更改,并且可以为车把模板定期“热重新加载”(它已经在没有hot: true
.
解决方案
为您创建了一个简单的配置,以显示它默认工作。 https://github.com/nickbullock/webpack-hmr-hbs-example
请运行它
npm i;
npm run start;
然后更改hello.hbs
,例如添加{{test}}
,然后将其值添加到index.js
文件中的选项中test: 'hola!'
。之后,您将看到来自 HMR 的日志,并且 webpack 将更新您的文件并成功查看。
在您的项目上调试它的步骤:
- 将选项设置
hotOnly: true
为devServer
配置部分。这将防止实时重新加载。 - 请在车把模板重新加载后显示 HMR 日志。
- 还请向我们展示您的 webpack 配置
推荐阅读
- animation - 动画算法
- r - shinysurveys 结果到 csv
- swiftui - 从孩子的根视图顶部覆盖视图?
- c# - 有没有办法让布局初始化(异步)在页面主体初始化之前出现?
- python - Python excel to pdf不会打印所有工作表
- clang - 有没有一种方便的方法可以在编译期间将默认标准库切换到自定义库?
- python - 加载到新模型实例后,pytorch state_dict 的序列化更改
- python-3.x - 无法正确停止 QThread 线程(PySide2)
- reactjs - 在反应上下文中使用异步登录功能
- github - 我可以在 github 存储库上托管我的网站代码吗?