webpack-dev-server搭建本地服務(wù)器的實現(xiàn)
前言
當(dāng)我們使用webpack打包時,發(fā)現(xiàn)每次更新了一點代碼,都需要重新打包,這樣很麻煩,我們希望本地能搭建一個服務(wù)器,然后寫入新的代碼能夠自動檢測出來,這時候就需要用到webpack-dev-server
webpack-deb-server
webpack提供了一個可選的本地開發(fā)服務(wù)器,這個本地服務(wù)器基于node.js搭建,內(nèi)部使用express框架,可以實現(xiàn)我們想要的瀏覽器自動刷新顯示我們修改后的結(jié)果
由于它是個單獨的模塊,使用之前,我們需要先安裝,命令如下:
npm install -D webpack-dev-server
安裝完成之后,我們也是需要在webpack中進行配置,配置的對象是devServer ,它也有很多的屬性,常用的幾個屬性如下:
- contentBase:為哪一個文件提供本地服務(wù),默認是根文件,我們這里要填寫./dist
- port:端口號,默認是8080
- inline:頁面實時刷新
- historyApiFallBack:在SPA(單頁面復(fù)應(yīng)用)頁面中,依賴HTML5的history模式
webpack.config.js配置如下:
module.exports = { devServer: { contentBase: "./dist", inline: true, }, }
接下來我們再在package.json文件中添加一條script命令:
"scripts": { "dev": "webpack serve" },
dev代表開發(fā)環(huán)境,以上我們的配置就算完成了
webpack-dev-server啟動報錯
然后我們啟動命令npm run dev,程序出現(xiàn)以下報錯:
Error: Cannot find module 'webpack-cli/bin/config-yargs'
原因是webpack-cli的版本問題,我們先來看以下我們的版本
"webpack": "^5.44.0", "webpack-cli": "^4.7.2", "webpack-dev-server": "^3.11.2"
解決方案1
降低webpack-cli的版本,從4降到3
1.卸載webpack-cli
npm uninstall webpack-cli
2.安裝webpack-cli@3
npm install webpack-cli@3 -D
然后啟動就不會報錯了,但是這只是臨時的解決方案,我們推薦第二種解決方式
解決方案2
更改scripts中的配置,將原來的webpack-dev-serve改為webpack serve即可
"scripts": { "dev": "webpack serve --open --mode development" },
最后我們在終端輸入npm run dev就可正常啟動,并且會自動打開網(wǎng)頁,因為我們加了參數(shù)--open,如果想手動打開,則取出--open即可
解決端口占用問題
如果你通過vue+webpack已經(jīng)啟動了一個項目,但是你又執(zhí)行了一遍npm run dev,此時就會報以下錯誤
Error: listen EADDRINUSE: address already in use 127.0.0.1:8080
原因是我們上次啟動的默認端口是8080,這次你又項啟動一個項目端口依然是8080,但是8080端口已經(jīng)被占用了,解決辦法我們只需要將8080端口對應(yīng)的PID進程號殺死即可
首先查找8080端口對應(yīng)的進程ID
lsof -i:8080
找到對應(yīng)的PID后使用kill命令殺死即可
kill -9 PID進程號
到此這篇關(guān)于webpack-dev-server搭建本地服務(wù)器 的文章就介紹到這了,更多相關(guān)webpack-dev-server搭建本地服務(wù)器 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript Event學(xué)習(xí)第二章 Event瀏覽器兼容性
在這一章我將對重要的事件做一個概述,包括一些流行的瀏覽器的兼容性問題。2010-02-02微信小程序獲取地理位置及經(jīng)緯度授權(quán)代碼實例
這篇文章主要介紹了微信小程序獲取地理位置及經(jīng)緯度授權(quán)代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-09-09JS前端面試必備——基本排序算法原理與實現(xiàn)方法詳解【插入/選擇/歸并/冒泡/快速排序】
這篇文章主要介紹了JS前端面試基本排序算法原理與實現(xiàn)方法,結(jié)合實例形式詳細分析了JS常見的基本排序算法相關(guān)原理、實現(xiàn)方法、時間復(fù)雜度及操作注意事項,需要的朋友可以參考下2020-02-02