我在使用webpack热重装在Vue 3-application中。在开发过程中,我想知道我的应用程序本身何时会发生重新加载。控制台显示了大量的“重新加载”文本,但当重新加载发生时,我需要清除应用程序中的一些内容。
有办法抓住热重装事件吗?
发布于 2022-01-24 06:50:08
如果您正在使用ESM构建,那么您可以使用Webpack注入的import.meta.webpackHot模块。
if (import.meta.webpackHot) {
import.meta.webpackHot.accept('./module-to-watch.js', () => {
// Cleanup code
});
}如果你正在使用生命或其他东西,那么你可以使用module.hot
if (module.hot) {
module.hot.accept('./module-to-watch.js', () => {
// Cleanup code
});
}‘./ you to - watch. is’是一条通往您要查看的模块的路径。它还可以接受字符串数组。
此外,如果您不关心依赖项,那么可以考虑使用更低级别的事件:
if (module.hot) {
const hotEmitter = require('webpack/hot/emitter');
hotEmitter.on('webpackHotUpdate', () => {
// Cleanup code...
});
}然而,这是低层次的,没有明确的记录.您可以在开发-服务器实现中看到这方面的例子。
https://stackoverflow.com/questions/70826702
复制相似问题