溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

webpack對(duì)html文件的處理方法

發(fā)布時(shí)間:2022-03-19 15:41:52 來源:億速云 閱讀:463 作者:iii 欄目:web開發(fā)

這篇文章主要講解了“webpack對(duì)html文件的處理方法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“webpack對(duì)html文件的處理方法”吧!

  為什么去處理html文件

  我們所有的方法都打包到了dist的文件夾下面,而我們的html是在自己定義的文件夾下面,如果自己手動(dòng)再去一個(gè)一個(gè)src引入這些dist文件夾下的js,那么也有些太不靠譜了

  所以解決辦法是:

  使用webpack插件:HtmlWebpackPlugin

  第一步:下載

  npminstall--save-devextract-text-webpack-plugin

  第二步:webpack.config.js配置

  其中HtmlWebpackPlugin的配置項(xiàng)有:

  Name 類型 Description

  title {String} 用于生成的HTML文檔的標(biāo)題

  filename {String} 要生成HTML的文件??梢灾付夸?/p>

  template {String} 依據(jù)的模板文件

  inject {Boolean|String} 將js資源注入到頁面哪個(gè)部位,值有:true\‘head’\‘body’\false,當(dāng)傳遞true或’body’所有JavaScript資源將被放置在正文元素的底部。’head’將腳本放置在head元素中

  favicon {String} 將給定的圖標(biāo)路徑添加到輸出HTML

  hash {Boolean} 如果true將webpack所有包含的腳本和CSS文件附加一個(gè)獨(dú)特的編譯哈希。這對(duì)緩存清除非常有用

  chunks {?} 放入你需要引入的資源模塊

  excludeChunks {?} 不放入你某些資源模塊

  預(yù)期目標(biāo):我的項(xiàng)目是一個(gè)多入口文件的項(xiàng)目,希望每一個(gè)入口頁面引入對(duì)應(yīng)的js模塊和css

  比如login頁面引入login的js和css、index引入對(duì)應(yīng)js和css

  webpack.config.js配置如下:

  constpath=require('path');constwebpack=require('webpack')constExtractTextPlugin=require("extract-text-webpack-plugin");constHtmlWebpackPlugin=require('html-webpack-plugin');constconfigs={

  entry:{'commom':['./src/page/common/index.js'],'index':['./src/page/index/index.js'],'login':['./src/page/login/index.js']

  },

  output:{

  path:path.resolve(__dirname,'dist'),

  filename:'js/[name].js'

  },

  module:{

  rules:[

  {

  test:/\.css$/,

  use:ExtractTextPlugin.extract({

  fallback:"style-loader",

  use:"css-loader"

  })

  }

  ]

  },

  plugins:[//獨(dú)立通用模塊

  newwebpack.optimize.CommonsChunkPlugin({

  name:'common',

  filename:'js/base.js'

  }),//獨(dú)立打包c(diǎn)ss

  newExtractTextPlugin('css/[name].css'),//對(duì)html模板進(jìn)行處理,生成對(duì)應(yīng)的html,引入需要的資源模塊

  newHtmlWebpackPlugin({

  template:'./src/view/index.html',//模板文件

  filename:'view/login/index.html',//目標(biāo)文件

  chunks:['commom','login'],//對(duì)應(yīng)加載的資源

  inject:true,//資源加入到底部

  hash:true//加入版本號(hào)

  })

  ]

  }

  module.exports=configs

感謝各位的閱讀,以上就是“webpack對(duì)html文件的處理方法”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)webpack對(duì)html文件的處理方法這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI