dev-middleware: live reload的實現:webpack
思考一下我們要如何更新(live reload)呢? 當然是須要取得 webpack 編好的資料啊,於是就須要在從 request
到 response
的過程中透過 express 的 middleware 取得資料,而方法就是透過 webpack-dev-middleware 。web
比起直接編譯成檔案,webpack-dev-middleware 這個套件還多了一些好處:express
不須要一直寫入磁碟,全部產生的結果會直接存在記憶體segmentfault
在監視模式(watch mode)下若是檔案發生異動,middleware 會馬上中止提供舊版的 bundle 並且會延遲請求的回應直到編譯完成,如此一來我們就不須要去觀察編譯是否結束了
瀏覽器
hot-middlware:服務器
熱替換(Hot Module Replacement/Hot Reloading
) ,實現瀏覽器刷新功能app
This module is only concerned with the mechanisms to connect a browser client to a webpack server & receive updates. It will subscribe to changes from the server and execute those changes using webpack's HMR API. Actually making your application capable of using hot reloading to make seamless changes is out of scope, and usually handled by another library.less
(原理基於 EventStream 輪詢機制,瀏覽器週期性詢問服務器獲取消息)命令行
資料1: https://segmentfault.com/a/1190000005614604?_ea=868190code