项目上线存在的缓存问题以及存在的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,
				})
			)
		}
	},
相关推荐
凌辰揽月32 分钟前
AJAX 学习
java·前端·javascript·学习·ajax·okhttp
然我2 小时前
防抖与节流:如何让频繁触发的函数 “慢下来”?
前端·javascript·html
鱼樱前端2 小时前
2025前端人一文看懂 Broadcast Channel API 通信指南
前端·vue.js
烛阴3 小时前
非空断言完全指南:解锁TypeScript/JavaScript的安全导航黑科技
前端·javascript
鱼樱前端3 小时前
2025前端人一文看懂 window.postMessage 通信
前端·vue.js
快乐点吧3 小时前
【前端】异步任务风控验证与轮询机制技术方案(通用笔记版)
前端·笔记
pe7er3 小时前
nuxtjs+git submodule的微前端有没有搞头
前端·设计模式·前端框架
七月的冰红茶4 小时前
【threejs】第一人称视角之八叉树碰撞检测
前端·threejs
爱掉发的小李4 小时前
前端开发中的输出问题
开发语言·前端·javascript
祝余呀4 小时前
HTML初学者第四天
前端·html