webpack5 常用插件使用

webpack5常用插件使用

  • [1. CleanWebpackPlugin](#1. CleanWebpackPlugin)
  • [2. HtmlWebpackPlugin](#2. HtmlWebpackPlugin)
  • [3. DefinePlugin](#3. DefinePlugin)
  • 4.CopyWebpackPlugin

1. CleanWebpackPlugin

复制代码
问题:每次打包完都需要手动删除掉dist文件目录,使用CleanWebpackPlugin就可自动清除dist目录。作用:自动清除dist文件目录
javascript 复制代码
	1. 安装 npm install clean-webpack-plugin -D
	2. 解构 
		 插件大都是封装成一个class的,也可以是函数,然后到时候去调用的hook回调
		 因为它导出的是一个对象,所以要通过解构取出来一个类。
		 const { CleanWebpackPlugin } = require('clean-webpack-plugin')
		
	4. 配置  plugins:[
		  	  new CleanWebpackPlugin(),
		    ]

2. HtmlWebpackPlugin

复制代码
问题:帮助我们打包的时候生成一个html入口文件,还可通过options设置html模板和标题。
javascript 复制代码
1. 安装 npm install html-webpack-plugin -D
2. 引用 const HtmlWebpackPlugin = require('html-webpack-plugin');
3. 配置模板和标题
	  plugins:[
		new HtmlWebpackPlugin({
	      template: './public/index.html',
	      title:"哈哈哈哈哈",
	    }),
	  ]

3. DefinePlugin

复制代码
问题:帮助我们设置全局基础路径。允许创建一个在编译时可配置的全局常
javascript 复制代码
1. 解构,webpack5自带有,导出的是一个对象解构好直接引用。
const { DefinePlugin } = require('webpack')
2. 配置模板的基础路径
	  plugins:[
 		new DefinePlugin({ // 设置基础路径
	     BASE_URL: "'./'"
	    }),
	  ] 

4.CopyWebpackPlugin

问题:打包的时候有些文件不需要打包生成,直接复制到打包好的文件目录中。复制某个文件或整个文件夹到生成目录中

javascript 复制代码
1. 安装 npm install copy-webpack-plugin -D
2. 引用 const CopyWebpackPlugin= require('copy-webpack-plugin');
3. 配置模板的基础路径
	  plugins:[
 	    new CopyWebpackPlugin({ //复制文件
	      patterns:[
	        {
	          from:'public',
	          to:'./',
	          globOptions:{
	            ignore:[
	              '**/index.html'
	            ]
	          }
	        }
	      ]
	    })
	  ] 
相关推荐
于慨19 小时前
Lambda 表达式、方法引用(Method Reference)语法
java·前端·servlet
石小石Orz19 小时前
油猴脚本实现生产环境加载本地qiankun子应用
前端·架构
从前慢丶19 小时前
前端交互规范(Web 端)
前端
CHU72903520 小时前
便捷约玩,沉浸推理:线上剧本杀APP功能版块设计详解
前端·小程序
GISer_Jing20 小时前
Page-agent MCP结构
前端·人工智能
王霸天20 小时前
💥别再抄网上的Scale缩放代码了!50行源码教你写一个永不翻车的大屏适配
前端·vue.js·数据可视化
小领航20 小时前
用 Three.js + Vue 3 打造炫酷的 3D 行政地图可视化组件
前端·github
@大迁世界20 小时前
2026年React大洗牌:React Hooks 将迎来重大升级
前端·javascript·react.js·前端框架·ecmascript
PieroPc20 小时前
一个功能强大的 Web 端标签设计和打印工具,支持服务器端直接打印到局域网打印机。Fastapi + html
前端·html·fastapi
悟空瞎说20 小时前
深入 Vue3 响应式:为什么有的要加.value,有的不用?从设计到源码彻底讲透
前端·vue.js