webpack概念

概念

  • webpack是一個現(xiàn)代javascript應(yīng)用程序的靜態(tài)模塊打包器铭乾,
  • webpack處理應(yīng)用程序時他會遞歸的構(gòu)建一個依賴關(guān)系圖爵川,其中包含應(yīng)用程序的每個模塊,然后將這些模塊打包成一個或者多個build文件

重要的四個概念

  1. 入口(entry)
  2. 輸出(output)
  3. loader(處理非js文件)
  4. 插件(plugins)

入口(enter)

告訴webpack 使用那個模塊 來作為構(gòu)建內(nèi)部依賴圖的開始单山!進(jìn)圖入口文件后授药,webpack會找到那些模塊和庫是入口起點(diǎn)(直接或者間接)的依賴!

例子:

module.exports = {
  entry: './path/to/my/entry/file.js'    // 我們的入口文件
};

出口(output)

output告訴webpack從哪里產(chǎn)出builds 以及如何命名這些文件 默認(rèn)值是 ./dist凹嘲。這樣整個應(yīng)用程序結(jié)構(gòu)都會編譯到你指定的文件夾中师倔。

例子

const path = require('path');

module.exports = {
  entry: './path/to/my/entry/file.js',            // 入口文件
  output: {
    path: path.resolve(__dirname, 'dist'),        // 打包后的文件夾的名字及路徑
    filename: 'my-first-webpack.bundle.js'        // 打包后的js名稱
  }
};

loader

loder 讓webpack能狗處理那些 非javascript 的文件(webpack自身只理解javascript)。loader可以將所有類型文件轉(zhuǎn)換為 webpack 能夠處理的有效模塊周蹭,然后就可以利用 webpack打包模塊 來對他們進(jìn)行處理趋艘。

本質(zhì)上 webpack loader 是將 所有類型的文件 轉(zhuǎn)化為 應(yīng)用程序依賴圖(最終的bundle) 可以直接進(jìn)行引用。

webpack loader 倆個參數(shù)

  1. test 用于標(biāo)識出應(yīng)該被對應(yīng)的 loader 進(jìn)行轉(zhuǎn)換的 某個 或者某個文件
  2. use 標(biāo)識轉(zhuǎn)換時應(yīng)該使用那個loader

例子:

const path = require('path');

module.exports = {
  entry: './path/to/my/entry/file.js',            // 入口文件
  output: {
    path: path.resolve(__dirname, 'dist'),        // 打包后的文件夾的名字及路徑
    filename: 'my-first-webpack.bundle.js'        // 打包后的js名稱
  },
  module: {
    rules: [
      { test: /\.txt$/, use: 'raw-loader' }
    ]
  }
};

解釋:
raw-loader webpack 的原始模塊 將文件加載為字符串
module 這塊的配置告訴 webpack 在打包過程中 遇到【require 或者 import】語句被解析為 ·.txt·的時候 請用·raw-loader· 轉(zhuǎn)換一下

插件(plugins)

loader 可以用來轉(zhuǎn)換某些類型的模塊谷醉,而插件則可以執(zhí)行范圍更廣的任務(wù).
插件的范圍包括:

  1. 打包優(yōu)化
  2. 壓縮
  3. 重新定義環(huán)境中的變量

使用一個插件 只需要 require 它致稀。 然后給它添加到 plugins 數(shù)組中。 多數(shù)插件可以通過 options 來定義俱尼。
注意:如果你在一個配置文件中多次的使用同一個插件時抖单,這時候需要通過new 操作符來重建一個新的實(shí)例。

例子:

const webpack = require('webpack');
const HtmlWebpackPlugin = require('html-webpack-plugin'); // html 需要npm 安裝一下
const config = {
  module: {
    rules: [
      { test: /\.txt$/, use: 'raw-loader' }
    ]
  },
  plugins: [
    new webpack.optimize.UglifyJsPlugin(),                // 壓縮js
    new HtmlWebpackPlugin({template: './src/index.html'}) // 指定模板
  ]
};

模式

通過 development 或 ·production· 之中的一個 來設(shè)置 mode 參數(shù), 來啟動 webpack 內(nèi)置的優(yōu)化

module.exports = {
  mode: 'production'
};
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末矛绘,一起剝皮案震驚了整個濱河市耍休,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌货矮,老刑警劉巖羊精,帶你破解...
    沈念sama閱讀 212,599評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異囚玫,居然都是意外死亡喧锦,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,629評論 3 385
  • 文/潘曉璐 我一進(jìn)店門抓督,熙熙樓的掌柜王于貴愁眉苦臉地迎上來燃少,“玉大人,你說我怎么就攤上這事铃在≌缶撸” “怎么了?”我有些...
    開封第一講書人閱讀 158,084評論 0 348
  • 文/不壞的土叔 我叫張陵定铜,是天一觀的道長阳液。 經(jīng)常有香客問我,道長揣炕,這世上最難降的妖魔是什么帘皿? 我笑而不...
    開封第一講書人閱讀 56,708評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮祝沸,結(jié)果婚禮上矮烹,老公的妹妹穿的比我還像新娘越庇。我一直安慰自己罩锐,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,813評論 6 386
  • 文/花漫 我一把揭開白布卤唉。 她就那樣靜靜地躺著涩惑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪桑驱。 梳的紋絲不亂的頭發(fā)上竭恬,一...
    開封第一講書人閱讀 50,021評論 1 291
  • 那天,我揣著相機(jī)與錄音熬的,去河邊找鬼痊硕。 笑死,一個胖子當(dāng)著我的面吹牛押框,可吹牛的內(nèi)容都是我干的岔绸。 我是一名探鬼主播,決...
    沈念sama閱讀 39,120評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼盒揉!你這毒婦竟也來了晋被?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,866評論 0 268
  • 序言:老撾萬榮一對情侶失蹤刚盈,失蹤者是張志新(化名)和其女友劉穎羡洛,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體藕漱,經(jīng)...
    沈念sama閱讀 44,308評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡欲侮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,633評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了肋联。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片锈麸。...
    茶點(diǎn)故事閱讀 38,768評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖牺蹄,靈堂內(nèi)的尸體忽然破棺而出忘伞,到底是詐尸還是另有隱情,我是刑警寧澤沙兰,帶...
    沈念sama閱讀 34,461評論 4 333
  • 正文 年R本政府宣布氓奈,位于F島的核電站,受9級特大地震影響鼎天,放射性物質(zhì)發(fā)生泄漏舀奶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,094評論 3 317
  • 文/蒙蒙 一斋射、第九天 我趴在偏房一處隱蔽的房頂上張望育勺。 院中可真熱鬧,春花似錦罗岖、人聲如沸涧至。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,850評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽南蓬。三九已至,卻和暖如春哑了,著一層夾襖步出監(jiān)牢的瞬間赘方,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,082評論 1 267
  • 我被黑心中介騙來泰國打工弱左, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留窄陡,地道東北人。 一個月前我還...
    沈念sama閱讀 46,571評論 2 362
  • 正文 我出身青樓拆火,卻偏偏與公主長得像跳夭,于是被迫代替她去往敵國和親鳖悠。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,666評論 2 350

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