搭建webpack構(gòu)建環(huán)境(1)-入門(mén)

環(huán)境依賴(lài)

確保已安裝nodejs 和npm ,并且可以正常運(yùn)行(在終端執(zhí)行:node -v npm -v,出現(xiàn)對(duì)應(yīng)版本信息說(shuō)明安裝成功 )
本人寫(xiě)這篇文章時(shí)的環(huán)境為

mac 系統(tǒng)
nodejs v6.9.1LTS
npm v3.10.8
webstorm 10

初始化項(xiàng)目

創(chuàng)建項(xiàng)目

mkdir my-project
cd my-project
#創(chuàng)建package.json 并全部使用默認(rèn)配置
npm init -y 

package.json內(nèi)容如下:

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

安裝webpack

#先全局安裝webpack
npm i webpack -g
#項(xiàng)目中加入webpack到開(kāi)發(fā)環(huán)境依賴(lài)中
npm i webpack --save-dev
#安裝過(guò)程中會(huì)有中間停頓,請(qǐng)勿手動(dòng)停止

為甚么安裝全局又安裝局部,請(qǐng)自行百度了解汉买。安裝后的package.json

{
  ...
  "devDependencies": {
    "webpack": "^1.13.3"
  }
  ...
}

項(xiàng)目結(jié)構(gòu)

項(xiàng)目結(jié)構(gòu)

請(qǐng)自行創(chuàng)建以上文件

熟悉的hello world

component.js

module.exports = function () {   
 var element = document.createElement('h1');
 element.innerHTML = 'Hello world';    return element;
};

index.js

var component = require('./component');
document.body.appendChild(component());

注意:這里目前不能使用import引用文件,要使用es6的方式需要加入babel-loader

配置webpack.config.js文件

在配置之前蜀涨,我們先加入一個(gè)為項(xiàng)目生成簡(jiǎn)單頁(yè)面的插件html-webpack-plugin(省了自己增加js后還要手動(dòng)引用到頁(yè)面的麻煩)
npm i html-webpack-plugin --save-dev

const path = require('path');
//引入剛才安裝插件
const HtmlWebpackPlugin = require('html-webpack-plugin');
//配置用到的路徑
const PATHS = {
  app: path.resolve(__dirname, 'app'),
  build: path.resolve(__dirname, 'build')
};

module.exports = {
//加載文件入口
  entry: {
    app: PATHS.app
  },
//處理后的出口
  output: {
    path: PATHS.build,
    filename: '[name].js'
  },
//插件
  plugins: [
    new HtmlWebpackPlugin({
      title: 'Webpack demo'
    })
  ]
};

執(zhí)行

 命令行輸入:webpack

krockdeMacBook-Pro:my-project krock$ webpack
Hash: 22e371d51a6f1503edf9//項(xiàng)目的hash
Version: webpack 1.13.3 //webpack版本
Time: 602ms //所用時(shí)間
//構(gòu)建后的結(jié)果
Asset Size Chunks Chunk Names
app.js 1.78 kB 0 [emitted] app
index.html 180 bytes [emitted]
//原文件
[0] ./app/index.js 120 bytes {0} [built]
[1] ./app/component.js 182 bytes {0} [built]

Child html-webpack-plugin for "index.html":
//3個(gè)隱藏的模塊,想要顯示使用命令 webpack --display-modules
+3 hidden modules

添加腳本命令build

在package.json>scripts中加入build

...
"scripts": {
  "build": "webpack"
},
...

執(zhí)行命令就可以使用 npm run build

下一章內(nèi)容

由于生產(chǎn)環(huán)境和開(kāi)發(fā)環(huán)境的不同捺癞,我們需要區(qū)別對(duì)待畦木,下一章我們切分配置文件
進(jìn)入下一章-分離配置文件

如果上述文章有什么問(wèn)題绞绒,發(fā)現(xiàn)后請(qǐng)留言,本人看到后會(huì)立刻修改耕腾,以免給后來(lái)的童鞋造成錯(cuò)誤的引導(dǎo)

本系列文章參考自surviceJS

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末见剩,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子扫俺,更是在濱河造成了極大的恐慌苍苞,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,997評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異羹呵,居然都是意外死亡骂际,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)冈欢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)歉铝,“玉大人,你說(shuō)我怎么就攤上這事凑耻√荆” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,359評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵香浩,是天一觀(guān)的道長(zhǎng)类缤。 經(jīng)常有香客問(wèn)我,道長(zhǎng)邻吭,這世上最難降的妖魔是什么餐弱? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,309評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮囱晴,結(jié)果婚禮上膏蚓,老公的妹妹穿的比我還像新娘。我一直安慰自己速缆,他們只是感情好降允,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,346評(píng)論 6 390
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著艺糜,像睡著了一般剧董。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上破停,一...
    開(kāi)封第一講書(shū)人閱讀 51,258評(píng)論 1 300
  • 那天翅楼,我揣著相機(jī)與錄音,去河邊找鬼真慢。 笑死毅臊,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的黑界。 我是一名探鬼主播管嬉,決...
    沈念sama閱讀 40,122評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼朗鸠!你這毒婦竟也來(lái)了蚯撩?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,970評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤烛占,失蹤者是張志新(化名)和其女友劉穎胎挎,沒(méi)想到半個(gè)月后沟启,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,403評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡犹菇,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,596評(píng)論 3 334
  • 正文 我和宋清朗相戀三年德迹,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片揭芍。...
    茶點(diǎn)故事閱讀 39,769評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡胳搞,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出称杨,到底是詐尸還是另有隱情流酬,我是刑警寧澤,帶...
    沈念sama閱讀 35,464評(píng)論 5 344
  • 正文 年R本政府宣布列另,位于F島的核電站,受9級(jí)特大地震影響旦装,放射性物質(zhì)發(fā)生泄漏页衙。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,075評(píng)論 3 327
  • 文/蒙蒙 一阴绢、第九天 我趴在偏房一處隱蔽的房頂上張望店乐。 院中可真熱鬧,春花似錦呻袭、人聲如沸眨八。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,705評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)廉侧。三九已至,卻和暖如春篓足,著一層夾襖步出監(jiān)牢的瞬間段誊,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,848評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工栈拖, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留连舍,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,831評(píng)論 2 370
  • 正文 我出身青樓涩哟,卻偏偏與公主長(zhǎng)得像索赏,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子贴彼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,678評(píng)論 2 354

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