Webpack 4的最快配置

Webpack升級到4之后卡儒,極大簡化了初始化一個項目的過程蛆橡,它默認不需要配置文件拱绑,但其實是不用配置entry和output邪意,其他還是需要新建webpack.config.js文件的九妈。

1、首先新建一個文件夾雾鬼,初始化一個項目

npm init -y

配置文件package.json文件生成如下

{
  "name": "TestWebpack",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

2萌朱、安裝webpack-cli,這里我建議以下的安裝都進行本地安裝策菜,不要全局安裝晶疼,避免與其他項目造成沖突

npm install webpack-cli --save-dev

等同于如下,具體用法參看:npm 用法

npm i -D webpack-cli

3又憨、安裝webpack

npm install webpack --save-dev

創(chuàng)建完成后目錄結(jié)構(gòu)是這樣的

image

上面說過了翠霍,webpack4已經(jīng)默認了entry和output,entry默認的是根目錄下src的index.js蠢莺,所以新建一個src/index.js寒匙,簡單的寫點東西,如下:

image

然后在package.json中添加兩條命令躏将,在之前的版本中锄弱,通常需要定義兩個配置文件,dev和prod一個開發(fā)一個生產(chǎn)祸憋,那么在最新的版本中我們只需要這樣:

image

分別運行 npm run dev 和 npm run build会宪,我們會發(fā)現(xiàn)多出來一個dist文件夾相對應(yīng)的輸出main.js文件,開發(fā)環(huán)境并沒有壓縮蚯窥,而生產(chǎn)環(huán)境進行了壓縮等操作

mode配置
開頭先講一個 webpack4 中新增的選項:mode掸鹅∠裁可能是受 parcel(https://parceljs.org/) 的刺激,webpack4 終于也可以零配置打包了河劝,主要原因是 webpack 終于明白了一個道理:約定大于配置壁榕。
model 的值有三種:production、development赎瞎、none 牌里,分別表示不同模式。
在 production 模式下务甥,會默認啟用下面這些插件:

process.env.NODE_ENV 的值設(shè)為 production
FlagDependencyUsagePlugin:刪除無用代碼
FlagIncludedChunksPlugin:刪除無用代碼
ModuleConcatenationPlugin:作用域提升
NoEmitOnErrorsPlugin:編譯出現(xiàn)錯誤牡辽,跳過輸出階段
OccurrenceOrderPlugin
SideEffectsFlagPlugin
UglifyJsPlugin:js代碼壓縮

在 development 模式下,會默認啟用下面這些插件:

process.env.NODE_ENV 的值設(shè)為 development
devtool 設(shè)置為 evel
NamedChunksPlugin
NamedModulesPlugin

4敞临、接著往下态辛,到目前為止我們還沒有一個前端頁面,同樣在 src 文件夾下新建index.html文件挺尿,初始化內(nèi)容不用做任何操作奏黑;然后安裝對html打包的插件 HtmlWebpackPlugin

npm install--save-dev html-webpack-plugin

新建 webpack.config.js文件并進行如下配置:

image

在上面的index.js文件中執(zhí)行一下那個函數(shù),然后終端執(zhí)行 npm run dev编矾,文件已經(jīng)被打包到了dist文件夾下熟史,瀏覽器打開index.html我們會看到打印出來的test

image

5、安裝簡單的web服務(wù)器窄俏,并添加熱加載 webpack-dev-server

npm install--save-dev webpack-dev-server

修改配置文件 webpack.config.js 和 package.json蹂匹,配置完成后就可以運行 npm run dev在瀏覽器查看了,并且支持熱加載

image
image

6凹蜈、其他插件以及加載器

加載css

npm install--save-dev style-loader css-loader

加載圖片

npm install--save-dev file-loader

build前刪除dist文件夾

npm installclean-webpack-plugin --save-dev

最終結(jié)果是這樣的

image
image
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末限寞,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子仰坦,更是在濱河造成了極大的恐慌履植,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,888評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件缎岗,死亡現(xiàn)場離奇詭異静尼,居然都是意外死亡白粉,警方通過查閱死者的電腦和手機传泊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鸭巴,“玉大人眷细,你說我怎么就攤上這事【樽妫” “怎么了溪椎?”我有些...
    開封第一講書人閱讀 168,386評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我校读,道長沼侣,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,726評論 1 297
  • 正文 為了忘掉前任歉秫,我火速辦了婚禮蛾洛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘雁芙。我一直安慰自己轧膘,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,729評論 6 397
  • 文/花漫 我一把揭開白布兔甘。 她就那樣靜靜地躺著谎碍,像睡著了一般。 火紅的嫁衣襯著肌膚如雪洞焙。 梳的紋絲不亂的頭發(fā)上蟆淀,一...
    開封第一講書人閱讀 52,337評論 1 310
  • 那天,我揣著相機與錄音澡匪,去河邊找鬼扳碍。 笑死,一個胖子當(dāng)著我的面吹牛仙蛉,可吹牛的內(nèi)容都是我干的笋敞。 我是一名探鬼主播,決...
    沈念sama閱讀 40,902評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼荠瘪,長吁一口氣:“原來是場噩夢啊……” “哼夯巷!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起哀墓,我...
    開封第一講書人閱讀 39,807評論 0 276
  • 序言:老撾萬榮一對情侶失蹤趁餐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后篮绰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體后雷,經(jīng)...
    沈念sama閱讀 46,349評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,439評論 3 340
  • 正文 我和宋清朗相戀三年吠各,在試婚紗的時候發(fā)現(xiàn)自己被綠了臀突。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,567評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡贾漏,死狀恐怖候学,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情纵散,我是刑警寧澤梳码,帶...
    沈念sama閱讀 36,242評論 5 350
  • 正文 年R本政府宣布隐圾,位于F島的核電站,受9級特大地震影響掰茶,放射性物質(zhì)發(fā)生泄漏暇藏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,933評論 3 334
  • 文/蒙蒙 一濒蒋、第九天 我趴在偏房一處隱蔽的房頂上張望叨咖。 院中可真熱鬧,春花似錦啊胶、人聲如沸甸各。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,420評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽趣倾。三九已至,卻和暖如春某饰,著一層夾襖步出監(jiān)牢的瞬間儒恋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,531評論 1 272
  • 我被黑心中介騙來泰國打工黔漂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留诫尽,地道東北人。 一個月前我還...
    沈念sama閱讀 48,995評論 3 377
  • 正文 我出身青樓炬守,卻偏偏與公主長得像牧嫉,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子减途,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,585評論 2 359

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