在热加载配置中: if (module.hot) 中的module在那里定义的,或者在那里传进来的
来源:2-7 hot-module-replacement

duxiaowei
2017-12-01
写回答
1回答
-
这是webpack提供的,在使用webpack-dev-server并启动热加载功能的时候,webpack-dev-server会吧两段代码打包的你的js里面,一个是`webpack/hot/dev-server`,另一个是`webpack-dev-server/client/`
你在开启webpack的devServer的hot时,他打包过程中就做了这个事情:
```
var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {},
/******/ hot: hotCreateModule(moduleId),
/******/ parents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp),
/******/ children: []
/******/ };
```
打包出来的代码如上,其中就有一个属性。这个属性对应的就是你自己写的模块中的module,这样你才有module.hot属性可以调用。
212017-12-01
相似问题