webpack實戰(zhàn)2之js分離

注意:

本文假設你有webpack2 的基礎認識。

本文的目的是分離第三方代碼和自身代碼

項目結構如下所示:

61498117491_.pic.jpg

開始實戰(zhàn)

創(chuàng)建一個目錄<code>webpack-demo2</code>,并安裝<code>wbepack</code>械馆。

  mkdir webpack-demo2 && cd webpack-demo2
  npm init -y
  npm install --save-dev webpack

安裝<code>jquery</code>

  npm install jquery --save

安裝<code>html-webpack-plugin</code>

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

新建<code>index.html</code>文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=<device-width>, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>webpack</title>
</head>
<body>
</body>
</html>

新建<code>index.js</code>文件

const $ = require('jquery');
$('body').html('hello world').css('color','red');

新建<code>webpack.config.js</code>文件

const path = require('path');
const webpack = require('webpack');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: {
    main: './index.js',
    vendor: 'jquery'
},
output: {
    filename: '[name].js',
    path: path.resolve(__dirname, 'dist')
},
plugins: [
    new webpack
        .optimize
        .CommonsChunkPlugin({
            name: ['vendor']
        }),
        new HtmlWebpackPlugin({
            filename:'index.html',
            template:'index.html',
            inject:'body'
        })
    ]
}

說明
上述代碼使用了多個入口封豪。

webpack.optimize.CommonsChunkPlugin 插件嫂侍,是一個可選的用于建立一個獨立文件(又稱作 chunk)的功能熙揍,這個文件包括多個入口 chunk 的公共模塊订咸。通過將公共模塊拆出來,最終合成的文件能夠在最開始的時候加載一次盟榴,便存起來到緩存中供后續(xù)使用曹质。

HtmlWebpackPlugin該插件將所有生成的js文件自動引入index.html中。當文件名帶有hash值時擎场,這個插件尤其有用羽德。
HtmlWebpackPlugin會根據(jù)模版生成一個新的html文件。

最后打包代碼:

webpack --config webpack.config.js

71498118152_.pic_hd.jpg

在瀏覽器中打開dist文件夾下的index.html就能看到效果了迅办。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末宅静,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子站欺,更是在濱河造成了極大的恐慌姨夹,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件镊绪,死亡現(xiàn)場離奇詭異匀伏,居然都是意外死亡,警方通過查閱死者的電腦和手機蝴韭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門够颠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人榄鉴,你說我怎么就攤上這事履磨。” “怎么了庆尘?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵剃诅,是天一觀的道長。 經常有香客問我驶忌,道長矛辕,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任付魔,我火速辦了婚禮聊品,結果婚禮上,老公的妹妹穿的比我還像新娘几苍。我一直安慰自己翻屈,他們只是感情好,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布妻坝。 她就那樣靜靜地躺著伸眶,像睡著了一般惊窖。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上厘贼,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天界酒,我揣著相機與錄音,去河邊找鬼嘴秸。 笑死盾计,一個胖子當著我的面吹牛,可吹牛的內容都是我干的赁遗。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼族铆,長吁一口氣:“原來是場噩夢啊……” “哼岩四!你這毒婦竟也來了?” 一聲冷哼從身側響起哥攘,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤剖煌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后逝淹,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體耕姊,經...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年栅葡,在試婚紗的時候發(fā)現(xiàn)自己被綠了茉兰。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡欣簇,死狀恐怖规脸,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情熊咽,我是刑警寧澤莫鸭,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站横殴,受9級特大地震影響被因,放射性物質發(fā)生泄漏。R本人自食惡果不足惜衫仑,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一梨与、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧惑畴,春花似錦蛋欣、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽到踏。三九已至,卻和暖如春尚猿,著一層夾襖步出監(jiān)牢的瞬間窝稿,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工凿掂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留伴榔,地道東北人。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓庄萎,卻偏偏與公主長得像踪少,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子糠涛,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內容

  • 最近在學習 Webpack,網(wǎng)上大多數(shù)入門教程都是基于 Webpack 1.x 版本的,我學習 Webpack 的...
    My_Oh_My閱讀 8,184評論 40 247
  • GitChat技術雜談 前言 本文較長援奢,為了節(jié)省你的閱讀時間,在文前列寫作思路如下: 什么是 webpack忍捡,它要...
    蕭玄辭閱讀 12,697評論 7 110
  • 無意中看到zhangwnag大佬分享的webpack教程感覺受益匪淺集漾,特此分享以備自己日后查看,也希望更多的人看到...
    小小字符閱讀 8,164評論 7 35
  • 寫在開頭 先說說為什么要寫這篇文章, 最初的原因是組里的小朋友們看了webpack文檔后, 表情都是這樣的: (摘...
    Lefter閱讀 5,288評論 4 31
  • 西子是常年在外奔波的設計師砸脊,住酒店的時間可能比在家里的時間還長具篇。上海、北京凌埂、廣州這些大都市的酒店全都被他睡了個遍驱显,...
    033e741a6890閱讀 717評論 0 1