欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

html-webpack-plugin怎么用

這篇文章將為大家詳細(xì)講解有關(guān)html-webpack-plugin怎么用,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)公司是專業(yè)的新平網(wǎng)站建設(shè)公司,新平接單;提供成都網(wǎng)站制作、成都做網(wǎng)站,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行新平網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!

html-webpack-plugin 可能用過的 webpack 的童鞋都用過這個(gè) plugin ,就算沒用過可能也聽過。我們?cè)趯W(xué)習(xí)webpack的時(shí)候,可能經(jīng)常會(huì)看到這樣的一段代碼。

// webpack.config.js
module.exports = {
  entry: path.resolve(__dirname, './app/index.js'),
  output:{
    path: path.resolve(__dirname, './build'),
    filename: 'bundle.js'
  }
  ...
  plugins: [
    new HtmlWebpackPlugin()
  ]
}

之后在終端輸入 webpack 命令后

webpack

你會(huì)神奇的看到在你的 build 文件夾會(huì)生成一個(gè) index.html 文件和一個(gè) bundle.js 文件,而且 index.html 文件中自動(dòng)引用 webpack 生成的 bundle.js 文件。

所有的這些都是 html-webpack-plugin 的功勞。它會(huì)自動(dòng)幫你生成一個(gè) html 文件,并且引用相關(guān)的 assets 文件(如 css, js)。

自己在六月第一次接觸前端自動(dòng)化構(gòu)建,學(xué)習(xí) webpack 和 react 時(shí),曾經(jīng)簡(jiǎn)單使用過這個(gè)插件,但也只是用了常見的幾個(gè)選項(xiàng),今天就跟著官方文檔走一走,看看它的所有用法。

title

顧名思義,設(shè)置生成的 html 文件的標(biāo)題。

filename

也沒什么說的,生成 html 文件的文件名。默認(rèn)為 index.html.

template

根據(jù)自己的指定的模板文件來生成特定的 html 文件。這里的模板類型可以是任意你喜歡的模板,可以是 html, jade, ejs, hbs, 等等,但是要注意的是,使用自定義的模板文件時(shí),需要提前安裝對(duì)應(yīng)的 loader, 否則webpack不能正確解析。以 jade 為例。

npm install jade-loader --save-dev
// webpack.config.js
...
loaders: {
  ...
  {
    test: /\.jade$/,
    loader: 'jade'
  }
}
plugins: [
  new HtmlWebpackPlugin({
    ...
    jade: 'path/to/yourfile.jade'
  })
]

最終在build文件夾內(nèi)會(huì)生成一個(gè) yourfile.html 和 bundle.js 文件?,F(xiàn)在我們?cè)倩仡^來看看之前將的 title 屬性。

如果你既指定了 template 選項(xiàng),又指定了 title 選項(xiàng),那么webpack 會(huì)選擇哪一個(gè)? 事實(shí)上,這時(shí)候會(huì)選擇你指定的模板文件的 title, 即使你的模板文件中未設(shè)置 title。

那么 filename 呢,是否也會(huì)覆蓋,其實(shí)不是,會(huì)以指定的 filename 作為文件名。

inject

注入選項(xiàng)。有四個(gè)選項(xiàng)值 true, body, head, false.

  1. true:默認(rèn)值,script標(biāo)簽位于html文件的 body 底部

  2. body:同 true

  3. head:script 標(biāo)簽位于 head 標(biāo)簽內(nèi)

  4. false:不插入生成的 js 文件,只是單純的生成一個(gè) html 文件

  5. favicon:給生成的 html 文件生成一個(gè) favicon。屬性值為 favicon 文件所在的路徑名。

// webpack.config.js
...
plugins: [
  new HtmlWebpackPlugin({
    ...
    favicon: 'path/to/yourfile.ico'
  }) 
]

生成的 html 標(biāo)簽中會(huì)包含這樣一個(gè) link 標(biāo)簽

<link rel="shortcut icon" href="example.ico" rel="external nofollow" >

同 title 和 filename 一樣,如果在模板文件指定了 favicon,會(huì)忽略該屬性。

minify

minify 的作用是對(duì) html 文件進(jìn)行壓縮,minify 的屬性值是一個(gè)壓縮選項(xiàng)或者 false 。默認(rèn)值為false, 不對(duì)生成的 html 文件進(jìn)行壓縮。來看看這個(gè)壓縮選項(xiàng)。

html-webpack-plugin 內(nèi)部集成了html-minifier ,這個(gè)壓縮選項(xiàng)同 html-minify 的壓縮選項(xiàng)完全一樣,
看一個(gè)簡(jiǎn)單的例子。

// webpack.config.js
...
plugins: [
  new HtmlWebpackPlugin({
    ...
    minify: {
      removeAttributeQuotes: true // 移除屬性的引號(hào)
    }
  })
]
<!-- 原h(huán)tml片段 -->
<div id="example" class="example">test minify</div>
<!-- 生成的html片段 -->
<div id=example class=example>test minify</div>

hash

hash選項(xiàng)的作用是 給生成的 js 文件一個(gè)獨(dú)特的 hash 值,該 hash 值是該次 webpack 編譯的 hash 值。默認(rèn)值為 false 。同樣看一個(gè)例子。

// webpack.config.js
plugins: [
  new HtmlWebpackPlugin({
    ...
    hash: true
  })
]
<script type=text/javascript src=bundle.js?22b9692e22e7be37b57e></script>

執(zhí)行 webpack 命令后,你會(huì)看到你的生成的 html 文件的 script 標(biāo)簽內(nèi)引用的 js 文件,是不是有點(diǎn)變化了。

bundle.js 文件后跟的一串 hash 值就是此次 webpack 編譯對(duì)應(yīng)的 hash 值。

$ webpack
Hash: 22b9692e22e7be37b57e
Version: webpack 1.13.2

cache

默認(rèn)值是 true。表示只有在內(nèi)容變化時(shí)才生成一個(gè)新的文件。

showErrors

showErrors 的作用是,如果 webpack 編譯出現(xiàn)錯(cuò)誤,webpack會(huì)將錯(cuò)誤信息包裹在一個(gè) pre 標(biāo)簽內(nèi),屬性的默認(rèn)值為 true ,也就是顯示錯(cuò)誤信息。

chunks

chunks 選項(xiàng)的作用主要是針對(duì)多入口(entry)文件。當(dāng)你有多個(gè)入口文件的時(shí)候,對(duì)應(yīng)就會(huì)生成多個(gè)編譯后的 js 文件。那么 chunks 選項(xiàng)就可以決定是否都使用這些生成的 js 文件。

chunks 默認(rèn)會(huì)在生成的 html 文件中引用所有的 js 文件,當(dāng)然你也可以指定引入哪些特定的文件。

看一個(gè)小例子。

// webpack.config.js
entry: {
  index: path.resolve(__dirname, './src/index.js'),
  index1: path.resolve(__dirname, './src/index1.js'),
  index2: path.resolve(__dirname, './src/index2.js')
}
...
plugins: [
  new HtmlWebpackPlugin({
    ...
    chunks: ['index','index2']
  })
]

執(zhí)行 webpack 命令之后,你會(huì)看到生成的 index.html 文件中,只引用了 index.js 和 index2.js

...
<script type=text/javascript src=index.js></script>
<script type=text/javascript src=index2.js></script>

而如果沒有指定 chunks 選項(xiàng),默認(rèn)會(huì)全部引用。

excludeChunks

弄懂了 chunks 之后,excludeChunks 選項(xiàng)也就好理解了,跟 chunks 是相反的,排除掉某些 js 文件。 比如上面的例子,其實(shí)等價(jià)于下面這一行

...
excludeChunks: ['index1.js']

chunksSortMode

這個(gè)選項(xiàng)決定了 script 標(biāo)簽的引用順序。默認(rèn)有四個(gè)選項(xiàng),'none', 'auto', 'dependency', '{function}'。

  1. 'dependency' 不用說,按照不同文件的依賴關(guān)系來排序。

  2. 'auto' 默認(rèn)值,插件的內(nèi)置的排序方式,具體順序這里我也不太清楚...

  3. 'none' 無序? 不太清楚...

  4. {function} 提供一個(gè)函數(shù)?但是函數(shù)的參數(shù)又是什么? 不太清楚...

如果有使用過這個(gè)選項(xiàng)或者知道其具體含義的同學(xué),還請(qǐng)告知一下。。。

xhtml

一個(gè)布爾值,默認(rèn)值是 false ,如果為 true ,則以兼容 xhtml 的模式引用文件。

關(guān)于“html-webpack-plugin怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

分享名稱:html-webpack-plugin怎么用
文章來源:http://aaarwkj.com/article2/iipooc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、云服務(wù)器、微信公眾號(hào)、網(wǎng)站維護(hù)網(wǎng)站內(nèi)鏈響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
国产日韩视频一区二区| 欧美日韩亚洲国产精品视频| 亚洲天堂日韩欧美在线| 麻豆亚洲av熟女国产| 先锋影音女同中文字幕 | 人人看男人的天堂东京 | 国产一区av麻豆免费观看| 亚洲日本乱码一区二区三| 国产黄色看三级91大片| av一区二区日韩电影| 国产精品粗又长一区| 美味人妻手机在线观看| 中文字幕日韩人妻一二三区| 人妻有码系列中文字幕专区| 天天操夜夜操狠狠操91| 日韩av手机在线不卡| 校园春色亚洲一区二区| 亚洲欧美日韩国产桃色| 国产自拍精品视频免费观看| 国产美女高潮流白浆视频免费看| 欧美日韩伦理片在线观看| 韩国黄色理论片一区二区麻豆| 日本又色又爽又黄的观看| 亚洲一二三区精品与老人| 成人午夜激情福利动态| 中文字幕三级电影天堂| 一区二区三区在线观看精品| 日韩国产传媒在线精品| 亚洲欧美成人高清在线观看| 未满十八禁止下载软件| 久久久久久精品妇女| 男女啪啪国产精品视频| 天堂av新版在线观看| 国产裸体无遮挡免费精品| av黄色成人在线观看| 日韩欧美亚洲国产另类| 青青草视频免费观看高清在线观看新| 久久中文字幕日韩精品| av中文字幕啊嗯不要| 肥臀大屁股av在线播放| 国产精品久久中文字幕网|