Webpack5 htmlwebpackplugin用法

文章目录

  • HtmlWebpackPlugin介绍
  • HtmlWebpackPlugin用法
    • [1. 安装HtmlWebpackPlugin插件:](#1. 安装HtmlWebpackPlugin插件:)
    • [2. 引入HtmlWebpackPlugin插件:](#2. 引入HtmlWebpackPlugin插件:)
    • [3. 配置HtmlWebpackPlugin:](#3. 配置HtmlWebpackPlugin:)
    • [4. 更多HtmlWebpackPlugin配置选项:](#4. 更多HtmlWebpackPlugin配置选项:)
  • 总结

HtmlWebpackPlugin介绍

Webpack是一个功能强大的模块打包工具,而HtmlWebpackPlugin是Webpack的一个插件,用于生成HTML文件并自动注入打包后的资源。

HtmlWebpackPlugin用法

1. 安装HtmlWebpackPlugin插件:

在开始之前,首先需要确保已经安装了Webpack5。然后,通过以下命令安装HtmlWebpackPlugin插件:

bash 复制代码
npm install html-webpack-plugin --save-dev

2. 引入HtmlWebpackPlugin插件:

在Webpack的配置文件中,使用require语句引入HtmlWebpackPlugin插件:

javascript 复制代码
const HtmlWebpackPlugin = require('html-webpack-plugin');

3. 配置HtmlWebpackPlugin:

在Webpack配置文件中,通过创建一个新的HtmlWebpackPlugin实例来配置插件:

javascript 复制代码
   plugins: [
     new HtmlWebpackPlugin({
       //一般使用绝对路径
       template:   path.resolve(__dirname, '../public/index.html') ,
       filename: 'index.html',
       minify: {
         collapseWhitespace: true,
         removeComments: true,
         removeRedundantAttributes: true,
         removeScriptTypeAttributes: true,
         removeStyleLinkTypeAttributes: true,
         useShortDoctype: true
       }
     })
   ]
  • template:指定HTML模板文件的路径,可以使用相对路径或绝对路径。
  • filename:指定生成的HTML文件名。
  • minify:压缩生成的HTML文件,可以通过配置该选项实现对HTML的压缩。

4. 更多HtmlWebpackPlugin配置选项:

  • title:设置生成的HTML文件的标题。
  • favicon:指定生成的HTML文件的favicon图标。
  • meta:定义生成的HTML文件中的meta标签。
  • hash:为生成的资源文件添加唯一的哈希值。
  • chunks:配置需要注入到HTML文件中的chunk。
  • templateParameters:自定义模板参数,可以在HTML模板文件中使用。
  • inject:指定资源文件的注入位置,可选值有true、'head'和'body'。
  • scriptLoading:指定生成的script标签的加载方式,可选值有'defer'、'async'和'blocking'。
  • cache:启用或禁用缓存,当值为true时启用缓存。
javascript 复制代码
new HtmlWebpackPlugin({
  ...
  title: 'My App',
  favicon: './src/assets/favicon.ico',
  meta: {
    viewport: 'width=device-width, initial-scale=1'
  },
  hash: true,
  chunks: ['main'],
  templateParameters: {
    BASE_URL: '/'
  },
  inject: 'body',
  scriptLoading: 'defer',
  cache: true
})

总结

介绍了Webpack5中HtmlWebpackPlugin插件的用法及其各种配置选项。借助HtmlWebpackPlugin插件,我们可以方便地生成HTML文件并自动注入打包后的资源,同时还能对HTML进行压缩和定制化配置。

相关推荐
moshuying18 分钟前
ESP32 墨水屏金价牌(上):从点亮到把图片推过去
前端
李剑一26 分钟前
别再抬杠,前端岗已经没了!无论前后端,我们最终都要成“全干”工程师
前端·面试
Highcharts.js27 分钟前
Highcharts 仪表盘与速度仪图表库介绍
前端·信息可视化·仪表板·highcharts·图表开发·图表库·仪表可视化
Java小卷27 分钟前
面向 Schema 编程,Vue 3 页面级渲染引擎!轻松玩转各场景 Validation!
vue.js·低代码
愚坤1 小时前
前端真有意思,JS还能独立做项目?
前端·javascript·github
SGAMERrain1 小时前
# Nuxt 4 + MediaPipe:如何在浏览器中实现本地 AI 人脸分析?
前端
github_is_geeksKai2 小时前
浏览器端文件处理的边界:PDF 面单、GPX 隐私与 EPUB 修复
前端
deli0073 小时前
从一句反馈到一次升级:Mystudy 的自进化实践
前端
FungLeo3 小时前
成为全栈·Vue 管理后台篇·用 fetch 建一层可控的请求内核
前端·javascript·vue.js·http·fetch·formdata·接口封装
FungLeo5 小时前
成为全栈·Vue 管理后台篇·Vue Router如何守住多角色后台边界
前端·javascript·vue.js·rbac·vue router·路由守卫·前端权限