webpack-dev-server
借助webpack-dev-server,会监听代码批改,主动构建,构建实现后通过热更新形式让浏览器内容主动发生变化。
webpac-dev-server联合HotModuleReplacementPlugin插件能够开启热更新的性能。
webpack-dev-server不刷新浏览器,也不输入文件(没有磁盘IO),而是放在内存中的。
webpack-dev-middleware
wdm能够实现和webpack-dev-server雷同的成果,然而他更实用于灵便的定制场景。
热更新的原理剖析
Webpack Compile:将JS编译成Bundle
HMR Server:将热更新的文件输入给HMR Runtime
1.首先是webpack-dev-server中的webpack compile:将JS编译成Bundle
2.HMR Server:将热更新的文件输入给HMR Runtime
3.Bundle server:提供文件在浏览器的拜访(localhost:8080)
4.HMR Runtime:会被注入到浏览器,更新文件的变动