(4/24) webpack3.x快速搭建本地服務(wù)和實(shí)現(xiàn)熱更新

寫在前面:
(1)為了防止版本兼容問(wèn)題,此處的webpack版本與之前的一致為:webpack@3.6.0惊豺。同時(shí)這里我們安裝的webpack-dev-server版本是2.9.7版本旷偿。
(2)之前已經(jīng)安裝了node.js

在此之前我們一直采用live-server充當(dāng)本地服務(wù)器,其實(shí)這與webpack是不怎么搭配的,現(xiàn)在我們可以利用webpack自帶的webpack-dev-server來(lái)構(gòu)建一個(gè)本地服務(wù)器(基于node.js架構(gòu))--讓瀏覽器檢測(cè)代碼修改,并自動(dòng)刷新修改后的結(jié)果无虚。由于webpack-dev-server是一個(gè)單獨(dú)的組件,因此在webpack中進(jìn)行配置之前需要單獨(dú)安裝它作為項(xiàng)目依賴。

1.安裝webpack-dev-server

本地安裝指定版本的webpack-dev-server:

npm install --save-dev webpack-dev-server@2.9.7
image.png

若npm安裝失敗输莺,選擇cnpm安裝成功率會(huì)高些丈冬。

2.配置devserver選項(xiàng)

2.1 在webpack.config.js中配置devserver選項(xiàng)

/webpack.config.js:

devServer:{
        //設(shè)置基本目錄結(jié)構(gòu)
        contentBase:path.resolve(__dirname,'dist'), //本地服務(wù)器所加載的頁(yè)面所在的目錄
        //服務(wù)器的IP地址,可以使用IP也可以使用localhost
        host:'localhost',
        //服務(wù)端壓縮是否開(kāi)啟
        compress:true,
        //配置服務(wù)端口號(hào)
        port:1818
    }

注釋:
1.contentBase:配置服務(wù)器基本運(yùn)行路徑,用于找到程序打包地址准给。
2.host:服務(wù)運(yùn)行地址畔规,建議使用本機(jī)IP畜埋。
3.compress:服務(wù)器端壓縮選型,一般設(shè)置為開(kāi)啟。
4.port:服務(wù)運(yùn)行端口,建議不使用80,很容易被占用,這里使用了1818

2.2 命令配置

由于webpack-dev-server是本地安裝的,相關(guān)文件被安裝到了本地目錄的的開(kāi)發(fā)環(huán)境中金闽。然后需要在package.json中手動(dòng)配置命令才能運(yùn)行node_modules下面的相關(guān)指令挤庇;直接運(yùn)行 webpack-dev-server命令會(huì)無(wú)法找到內(nèi)部或外部命令昆咽。
/package.json:

"scripts": {
    "server":"webpack-dev-server"
 },

結(jié)構(gòu)圖為:


image.png

配置好并保存后,在webstorm終端里輸入 npm run server 打開(kāi)服務(wù)器殖告。然后在瀏覽器地址欄輸入 http://localhost:1818 就可以看到結(jié)果了爽丹。

image.png

3.熱更新

npm run server啟動(dòng)后,它是有一種監(jiān)控機(jī)制的(也叫watch)软啼。它可以監(jiān)控到我們修改源碼贿条,并立即在瀏覽器里給我們實(shí)時(shí)更新钓葫,但是它不是真正的打包豆同,它類似于在內(nèi)存中進(jìn)行了打包。所以本地文件并沒(méi)有變化辆床。
注意:這里只是我們的webpack3.6版本支持咨堤,在3.5版本時(shí)要支持熱更新還需要一些其他的操作。如果都設(shè)置好了,但是不進(jìn)行熱更新,可能是系統(tǒng)的問(wèn)題,在Linux和Ma上支持良好炊琉,在Windows上有時(shí)會(huì)出現(xiàn)問(wèn)題箕般。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖坯墨,帶你破解...
    沈念sama閱讀 219,270評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡检访,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門柏腻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了抬驴?”我有些...
    開(kāi)封第一講書人閱讀 165,630評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵胧卤,是天一觀的道長(zhǎng)绝骚。 經(jīng)常有香客問(wèn)我古瓤,道長(zhǎng)落君,這世上最難降的妖魔是什么叽奥? 我笑而不...
    開(kāi)封第一講書人閱讀 58,906評(píng)論 1 295
  • 正文 為了忘掉前任赵哲,我火速辦了婚禮橡庞,結(jié)果婚禮上法竞,老公的妹妹穿的比我還像新娘。我一直安慰自己劝萤,他們只是感情好渊涝,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著床嫌,像睡著了一般跨释。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上厌处,一...
    開(kāi)封第一講書人閱讀 51,718評(píng)論 1 305
  • 那天鳖谈,我揣著相機(jī)與錄音,去河邊找鬼阔涉。 笑死缆娃,一個(gè)胖子當(dāng)著我的面吹牛捷绒,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播贯要,決...
    沈念sama閱讀 40,442評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼暖侨,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了崇渗?” 一聲冷哼從身側(cè)響起字逗,我...
    開(kāi)封第一講書人閱讀 39,345評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎宅广,沒(méi)想到半個(gè)月后葫掉,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡乘碑,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評(píng)論 3 337
  • 正文 我和宋清朗相戀三年挖息,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片兽肤。...
    茶點(diǎn)故事閱讀 40,117評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡套腹,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出资铡,到底是詐尸還是另有隱情电禀,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評(píng)論 5 346
  • 正文 年R本政府宣布笤休,位于F島的核電站尖飞,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏店雅。R本人自食惡果不足惜政基,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望闹啦。 院中可真熱鬧沮明,春花似錦、人聲如沸窍奋。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,011評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)琳袄。三九已至江场,卻和暖如春扼鞋,著一層夾襖步出監(jiān)牢的瞬間造成,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,139評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工麦锯, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留碎紊,地道東北人佑附。 一個(gè)月前我還...
    沈念sama閱讀 48,377評(píng)論 3 373
  • 正文 我出身青樓用含,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親帮匾。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1 Webpack 1.1 概念簡(jiǎn)介 1.1.1 WebPack是什么 1痴鳄、一個(gè)打包工具 2瘟斜、一個(gè)模塊加載工具 3...
    Kevin_Junbaozi閱讀 6,673評(píng)論 0 16
  • 寫在前面的話 閱讀本文之前,先看下面這個(gè)webpack的配置文件痪寻,如果每一項(xiàng)你都懂螺句,那本文能帶給你的收獲也許就比較...
    不忘初心_9a16閱讀 3,235評(píng)論 0 17
  • 在現(xiàn)在的前端開(kāi)發(fā)中,前后端分離橡类、模塊化開(kāi)發(fā)蛇尚、版本控制、文件合并與壓縮顾画、mock數(shù)據(jù)等等一些原本后端的思想開(kāi)始...
    Charlot閱讀 5,443評(píng)論 1 32
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理取劫,服務(wù)發(fā)現(xiàn),斷路器研侣,智...
    卡卡羅2017閱讀 134,665評(píng)論 18 139
  • 君亭就嘿嘿地笑了谱邪,說(shuō):“你看我可憐不可憐,當(dāng)村干部不敢走大門庶诡,從后窗子跑哩惦银!我給四叔說(shuō)實(shí)話,金蓮砍樹(shù)枝的事我哪里不...
    姜辣素閱讀 243評(píng)論 0 0