项目上线存在的缓存问题以及存在的debugger和console.log等问题

  1. 下载uglifyjs-webpack-plugin插件
  1. 在vue.config文件中进行配置
javascript 复制代码
publicPath: process.env.NODE_ENV === 'production' ? './' : '/',
	outputDir: 'n-sim-ipc-manage-build',
	productionSourceMap: false,
	configureWebpack: config => {
		//打包文件增加hash
		config.output.filename = `js/[name].[hash].${timeStamp}.js`
		config.output.chunkFilename = `js/[name].[hash].${timeStamp}.js`
		if (process.env.NODE_ENV === 'production') {
			config.plugins.push(
				//开启gzip压缩
				new CompressionWebpackPlugin({
					filename: '[path].gz[query]',
					algorithm: 'gzip',
					test: productionGzipExtensions,
					threshold: 1024,
					minRatio: 0.8,
				}),
				//build之后生成压缩包
				new FileManagerPlugin({
					events: {
						onEnd: {
							delete: [
								'./*.zip', // 删除之前已经存在的压缩包
							],
							archive: [
								{
									source: './n-sim-ipc-manage-build',
									destination: `./n-sim-ipc-manage-build-${dayjs().format(
										'YYYYMMDDHHmmss'
									)}.zip`,
								},
							],
						},
					},
				})
			)
			//配置打包去除console等
			config.optimization.minimizer.push(
				new UglifyJsPlugin({
					uglifyOptions: {
						output: {
							// 删除注释
							comments: false,
						},
						//生产环境自动删除console
						compress: {
							// warnings: false, // 若打包错误,则注释这行
							drop_debugger: true, //清除 debugger 语句
							drop_console: true, //清除console语句
							pure_funcs: ['console.log'],
						},
					},
					sourceMap: false,
					parallel: true,
				})
			)
		}
	},
相关推荐
C澒3 分钟前
SLDS 自营物流系统:Pickup 揽收全流程
前端·架构·系统架构·教育电商·交通物流
摸鱼的春哥14 分钟前
把白领吓破防的2028预言,究竟讲了什么?
前端·javascript·后端
infiniteWei14 分钟前
SKILL.md 触发机制与设计规范:避免“写了不触发”
java·前端·设计规范
慧一居士16 分钟前
SVG图片介绍和使用
前端
Rysxt_17 分钟前
Uniapp全局配置教程
前端·uniapp
阿珊和她的猫22 分钟前
深入理解与使用 Cookie:Web 开发中的关键机制
前端·状态模式
用户5474875962224 分钟前
webpack代码分割
前端
简离27 分钟前
Ant Design Form.Item 多元素场景踩坑指南:自定义onChange导致表单值同步失败解决方案
前端·ant design
JunjunZ28 分钟前
uniapp实现图片压缩并上传
前端·vue.js