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'
	            ]
	          }
	        }
	      ]
	    })
	  ] 
相关推荐
赵大仁3 分钟前
深入理解 Vue 3 中的具名插槽
前端·javascript·vue.js·react.js·前端框架·ecmascript·html5
一雨方知深秋8 分钟前
v-bind 操作 class(对象,数组),v-bind 操作 style
前端·css·vue.js·html·style·class·v-bind
安晴晚风1 小时前
从0开始在linux服务器上部署SpringBoot和Vue
linux·运维·前端·数据库·后端·运维开发
前端小小王2 小时前
pnpm、Yarn 和 npm 的区别?
前端·npm·node.js
supermapsupport2 小时前
使用npm包的工程如何引入mapboxgl-enhance/maplibre-gl-enhance扩展包
前端·webpack·npm·supermap·mapboxgl
牛奔2 小时前
windows nvm 切换node版本后,npm找不到
前端·windows·npm·node.js
鱼大大博客2 小时前
Edge SCDN酷盾安全重塑高效安全内容分发新生态
前端·安全·edge
鸭梨山大。2 小时前
NPM组件包 vant部分版本内嵌挖矿代码
前端·安全·npm·node.js·vue
蟾宫曲7 小时前
在 Vue3 项目中实现计时器组件的使用(Vite+Vue3+Node+npm+Element-plus,附测试代码)
前端·npm·vue3·vite·element-plus·计时器
秋雨凉人心7 小时前
简单发布一个npm包
前端·javascript·webpack·npm·node.js