webpack的介紹及搭建步驟

webpack:? 打包工具? 前端必備

對webpack的理解:

Webpack可以看作是一個模塊的打包機(jī)祝蝠,它做的事情就是分析你的項目結(jié)構(gòu)删顶,找到了模塊以及其它的一些瀏覽器不能使用的拓展語言谢澈。并將其轉(zhuǎn)換和打包為合適的格式提供瀏覽器使用

為什么要用webpack?

Webpack 可以將多種靜態(tài)資源 js洒嗤、css、less 轉(zhuǎn)換成一個靜態(tài)文件蜻展,減少了頁面的請求

webpack的作用:

? ? ? ? ? ? ? ? ? 1.打包(可以處理js的依賴關(guān)系)

? ? ? ? ? ? ? ? ? 2.轉(zhuǎn)換(less,sass,loader工具處理)

? ? ? ? ? ? ? ? ? 3.優(yōu)化(把優(yōu)化功能做了)

webpack的一些核心東西:

? ? ? ? ? ? ? ? ? 1.入口entry

? ? ? ? ? ? ? ? ? 2.出口output

? ? ? ? ? ? ? ? ? 3.轉(zhuǎn)換器loader

? ? ? ? ? ? ? ? ? 4.模式mode

? ? ? ? ? ? ? ? ? 5.服務(wù)器devServer

webpack如何初始化配置:

(1) Entry 應(yīng)用程序的起點入口,可以是一個文件喉誊,如果傳遞一個數(shù)組,那么那么數(shù)組的每一都會執(zhí)行纵顾,也可以是一個對象伍茄。

(2) Output 位于對象最頂級鍵(key),包括了一組選項,指示webpack 如何輸出施逾,

以及哪里輸出敷矫,和他你所打包或使用webpack 載入的任何內(nèi)容例获。

(3)Plugins引入插件

(4)loader就是webpack 用來預(yù)處理模塊的,在一個模塊被引入之前曹仗,會預(yù)先

用loader處理模塊的內(nèi)容榨汤。

webpack如何打包?

webpack entry<entry> output (命令行)

webpack -config webpack.conf.js (指定webpack的配置文件)

搭建webpack步驟:

? ? ? ? ? ? ? ? 在C盤終端執(zhí)行前三個指令

? ? ? ? ? ? ? ? 1.(c)npm install webpack -g? ? 全局安裝webpack

? ? ? ? ? ? ? ? 2.(c)npm install webpack-cli -g? ? 全局安裝webpack

? ? ? ? ? ? ? ? 3.(c)npm init -y ? 創(chuàng)建webpack

? ? ? ? ? ? ? ? 4.創(chuàng)建一個src源文件整葡,src里創(chuàng)建兩個文件index.html , index.js

? ? ? ? ? ? ? ? 5.創(chuàng)建一個dist文件夾件余。它是打包生成的的文件,里面創(chuàng)建一個index.html

? ? ? ? ? ? ? ? 6.終端: webpack src/index.js --output dist/bundle.js

? ? ? ? ? ? ? ? 7 (或者). 配置webpack.config.js 文件

? ? ? ? ? ? ? ? ? ? ? ? ? ? const path = require("path")

? ? ? ? ? ? ? ? ? ? ? ? ? ? module.exports={

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //入口

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? entry:"./src/index.js",

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //出口

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? output:{

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? path:path.resolve(__dirname,"dist")? // 設(shè)置默認(rèn)的出口位置

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? filename:"bundle.js"? ? ? ? // 設(shè)置默認(rèn)的出口的文件名

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? 終端 :webpack

? ? ? ? ? ? ? ? ? 在src文件夾下的index.js 引入? import ... from? "路徑"

? ? ? ? ? ? ? ? 終端 : webpack(再次打包遭居,并刪除起初dist文件夾的bundle.js)

? ? ? ? ? ? 8.webpack-dev-server? 安裝啼器,他的作用就是自動編譯? 熱加載(局部加載)

? ? ? ? ? ? ? ? cnpm i webpack-dev-server -D

? ? ? ? ? ? ? 如果出現(xiàn)圖片上的警告,就輸入以下指令:

? ? ? ? ? ? ? ? ? ? ? cnpm i webpack -D

? ? ? ? ? ? ? ? ? ? ? cnpm i webpack-cli -D( 解決警告問題)

? ? ? ? ? ? package中"scripts"內(nèi)寫入:"dev": "webpack-dev-server --open --port 8080 --contentBase src --hot" 配置在scripts對象李

? ? ? ? ? ? ? ? --open? 自動打開瀏覽器?

? ? ? ? ? ? ? --port? 端口號

? ? ? ? ? ? ? --contentBase? 默認(rèn)加載路徑

? ? ? ? ? ? ? --hot? 熱加載

? ? ? 此文件終端輸入指令:? npm run dev

? ? ? ? 然后下載插件指令:? cnpm i html-webpack-plugin -D

? ? ? 可以在內(nèi)存(webpack.config)中? 取到 打包之后的 js文件

? ? ? const htmlWebpackPlugin = require("html-webpack-plugin");

? ? ? plugins:[

? ? ? ? ? ? ? new htmlWebpackPlugin({

? ? ? ? ? ? ? ? ? ? ? ? ? filename:"index.html",

? ? ? ? ? ? ? ? ? ? ? ? template:path.join(__dirname,"./src/index.html")

? ? ? ? ? })

? ? ? ]

? ? dist文件夾的index.html? 文件里面引入的js 便可 去掉了

代碼如下:


src文件夾的index.html的代碼
src文件夾的index.js的代碼


package.json的代碼
webpack.config.js的代碼

?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末俱萍,一起剝皮案震驚了整個濱河市端壳,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌枪蘑,老刑警劉巖损谦,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異岳颇,居然都是意外死亡照捡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進(jìn)店門话侧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來栗精,“玉大人,你說我怎么就攤上這事瞻鹏”ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵新博,是天一觀的道長薪夕。 經(jīng)常有香客問我,道長赫悄,這世上最難降的妖魔是什么原献? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮埂淮,結(jié)果婚禮上嚼贡,老公的妹妹穿的比我還像新娘。我一直安慰自己同诫,他們只是感情好粤策,可當(dāng)我...
    茶點故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著误窖,像睡著了一般叮盘。 火紅的嫁衣襯著肌膚如雪秩贰。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天柔吼,我揣著相機(jī)與錄音毒费,去河邊找鬼。 笑死愈魏,一個胖子當(dāng)著我的面吹牛觅玻,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播培漏,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼溪厘,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了牌柄?” 一聲冷哼從身側(cè)響起畸悬,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎珊佣,沒想到半個月后蹋宦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡咒锻,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年冷冗,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惑艇。...
    茶點故事閱讀 39,965評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡蒿辙,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出敦捧,到底是詐尸還是另有隱情,我是刑警寧澤碰镜,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布兢卵,位于F島的核電站,受9級特大地震影響绪颖,放射性物質(zhì)發(fā)生泄漏秽荤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一柠横、第九天 我趴在偏房一處隱蔽的房頂上張望窃款。 院中可真熱鬧,春花似錦牍氛、人聲如沸晨继。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽紊扬。三九已至蜒茄,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間餐屎,已是汗流浹背檀葛。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留腹缩,地道東北人屿聋。 一個月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像藏鹊,于是被迫代替她去往敵國和親润讥。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,914評論 2 355

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

  • 前言 本文主要從webpack4.x入手伙判,會對平時常用的Webpack配置一一講解象对,各個功能點都有對應(yīng)的詳細(xì)例子,...
    BetterChen閱讀 1,949評論 0 3
  • 前言: 拿到一個項目 , 生成默認(rèn)package.json宴抚,可以執(zhí)行npm init -ypackage.json...
    筱瘋子閱讀 1,980評論 0 0
  • 在現(xiàn)在的前端開發(fā)中勒魔,前后端分離、模塊化開發(fā)菇曲、版本控制冠绢、文件合并與壓縮、mock數(shù)據(jù)等等一些原本后端的思想開始...
    Charlot閱讀 5,440評論 1 32
  • 1常潮、webpack入門 Webpack 是一個前端資源的打包工具弟胀,它可以將js、image喊式、css等資源當(dāng)成一個模...
    余生安好178閱讀 1,078評論 0 2
  • 更新:Webpack4已經(jīng)發(fā)布孵户,本篇是基于Webpack3的,請注意岔留。更正:1.package.json中使用了應(yīng)...
    HermitCarb閱讀 1,233評論 2 4