1. 程式人生 > >webpack-dev-server無法自動編譯熱更新

webpack-dev-server無法自動編譯熱更新

首先說明一下我用的是sublime text3
之前做nodejs開發的時候一直是手動node app.js,每次後臺改了一點程式碼都要重新跑一遍,開發效率實在不高,也瞭解webpack貌似有熱更新的功能,也折騰過幾次一直不成功,今天又折騰了好久,根據官方文件來做的,應該沒有問題,但就是無法自動根據檔案修改而重新編譯載入。找了好多資料,最後還是在webpack2官網上發現接近問題真相的解釋,但是也根據說明改了配置發現也不行:
參考連結:webpack2文件-開發

一些文字編輯器有“safe write”(安全寫入)功能,並且預設啟用。因此,儲存檔案後並不總是會導致 webpack 重新編譯。
每個編輯器都有不同的方式來禁用這一功能,以下是一些最常見的:
Sublime Text 3 - 在使用者設定(preference)中增加 “atomic_save”: false。
IntelliJ - 在設定中查詢 “safe write”並且禁用它。
Vim - 在設定中增加 :set backupcopy=yes。
WebStorm - 在 Preferences > Appearance & Behavior > System Settings 中取消選中 Use “safe write”。

最後!!!多次實驗!!!發現!!!真的是編輯器的原因!!!!!
說一下我是如何發現的==
因為文件談到需要改”atomic_save”: false,所以我想到可能是因為編輯器的原因,然後就放棄編輯器,在終端中用vim修改程式碼,結果成功的自動重新編譯載入了。。。然後換回sublime text3發現又不行。。。最後我又換成visual studio code,也是成功的。。。
我搜索了一下為什麼sublime中修改程式碼不能自動更新的問題,只發現瞭如下解釋:
1. 在Ubuntu中,使用Sublime修改檔案,webpack-dev-server不自動編譯熱替換

具體原因還不是很清楚,以後再研究研究。
總之,如果有同志們碰到跟我一樣的問題,不要懷疑自己的webpack配置出問題了,跟官方文件走基本不會有問題,嘗試著換一個編輯器看看吧!