日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

html-webpack-plugin 多页面,html-webpack-plugin

發布時間:2025/3/21 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 html-webpack-plugin 多页面,html-webpack-plugin 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

html-webpack-plugin打包處理html

引言: HTML文件開始是在開發目錄src下的,但最終發布時是要把包括js,css,HTML和其他資源都打包到dist(打包目錄)文件下,webpack下的插件html-webpack-plugin為處理HTML而生。

原理

將開發目錄下的指定html文檔打包到dist目錄下,也就是將entry配置的相關入口thunk和extract-text-webpack-plugin抽取的css樣式插入到該插件提供的template或者templateContent配置項指定的內容基礎上生成一個html文件,具體插入方式是將樣式link插入到head元素中,script插入到head或者body中。

使用方法

npm install html-webpack-plugin --save-dev //下載插件

//webpack中實例化該插

var HtmlWebpackPlugin = require('html-webpack-plugin')

webpackconfig = {

...

plugins: [

new HtmlWebpackPlugin({

//該插件配置項

})

]

}

配置項說明

title:生成的html文檔的標題。配置該項,它并不會替換指定模板文件中的title元素的內容,除非html模板文件中使用了模板引擎語法來獲取該配置項值,如下ejs模板語法形式:

*注意:htmlWebpackPlugin對象首字母要小寫

template:本地模板文件的位置,支持加載器(如handlebars、ejs、undersore、html等),如比如

handlebars!src/index.hbs;

補充:

template配置項在html文件使用file-loader時,其所指定的位置找不到,導致生成的html文件內容不是期望的內容。

為template指定的模板文件沒有指定任何loader的話,默認使用ejs-loader。如template:’./index.html’,若沒有為.html指定任何loader就使用ejs-loader

inject: 向template或者templateContent中注入所有靜態資源,不同的配置值注入的位置不經相同。

true或者body:所有JavaScript資源插入到body元素的底部

head: 所有JavaScript資源插入到head元素中

false: 所有靜態資源css和JavaScript都不會注入到模板文件中

hash: true|false,是否為所有注入的靜態資源添加webpack每次編譯產生的唯一hash值,添加hash形式如下所示:

html

chunks:允許插入到模板中的一些chunk,不配置此項默認會將entry中所有的thunk注入到模板中。在配置多個頁面時,每個頁面注入的thunk應該是不相同的,需要通過該配置為不同頁面注入不同的thunk,如下:

chunks:['common','index'],

showErrors: true|false,默認true;是否將錯誤信息輸出到html頁面中。這個很有用,在生成html文件的過程中有錯誤信息,輸出到頁面就能看到錯誤相關信息便于調試。

常用配置項模板

new HtmlWebpackPlugin({

title:'rd平臺',

template: 'entries/index.html', // 源模板文件

filename: './index.html', // 輸出文件【注意:這里的根路徑是module.exports.output.path】

showErrors: true,

inject: 'body',

chunks: ["common",'index']

})

配置多個html頁面

說明:每配置一個頁面就要新建一個new HtmlWebpackPlugin({ })所以有必要將里面的配置項提取到一個公共方法里作為參數傳入,如下:

function getHtmlPlugin(pageName) {

return {

template:'./src/view/'+pageName+'.html',

filename:'view/'+pageName+'.html',

inject:true,

hash:true,

chunks:['common',pageName]

};

};

提取html文件共有的模板

安裝html-loader;

在原HTML文件模板需要插入提取出來的模板的地方使用ejs語法require提取出來的模板;

加粗 Ctrl + B

斜體 Ctrl + I

引用 Ctrl + Q

插入鏈接 Ctrl + L

插入代碼 Ctrl + K

插入圖片 Ctrl + G

提升標題 Ctrl + H

有序列表 Ctrl + O

無序列表 Ctrl + U

橫線 Ctrl + R

撤銷 Ctrl + Z

重做 Ctrl + Y

總結

以上是生活随笔為你收集整理的html-webpack-plugin 多页面,html-webpack-plugin的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。